Note
Go to the endto download the full example code.
Animate a 3D wireframe plot#
A very simple "animation" of a 3D plot. See alsoRotating a 3D plot.
(This example is skipped when building the documentation gallery because itintentionally takes a long time to run.)
importtimeimportmatplotlib.pyplotaspltimportnumpyasnpfig=plt.figure()ax=fig.add_subplot(projection='3d')# Make the X, Y meshgrid.xs=np.linspace(-1,1,50)ys=np.linspace(-1,1,50)X,Y=np.meshgrid(xs,ys)# Set the z axis limits, so they aren't recalculated each frame.ax.set_zlim(-1,1)# Begin plotting.wframe=Nonetstart=time.time()forphiinnp.linspace(0,180./np.pi,100):# If a line collection is already remove it before drawing.ifwframe:wframe.remove()# Generate data.Z=np.cos(2*np.pi*X+phi)*(1-np.hypot(X,Y))# Plot the new wireframe and pause briefly before continuing.wframe=ax.plot_wireframe(X,Y,Z,rstride=2,cstride=2)plt.pause(.001)print('Average FPS:%f'%(100/(time.time()-tstart)))
Tags:plot-type: 3Dcomponent: animationlevel: beginner