Note
Go to the endto download the full example code.
Triangular 3D surfaces#
Plot a 3D surface with a triangular mesh.
importmatplotlib.pyplotaspltimportnumpyasnpn_radii=8n_angles=36# Make radii and angles spaces (radius r=0 omitted to eliminate duplication).radii=np.linspace(0.125,1.0,n_radii)angles=np.linspace(0,2*np.pi,n_angles,endpoint=False)[...,np.newaxis]# Convert polar (radii, angles) coords to cartesian (x, y) coords.# (0, 0) is manually added at this stage, so there will be no duplicate# points in the (x, y) plane.x=np.append(0,(radii*np.cos(angles)).flatten())y=np.append(0,(radii*np.sin(angles)).flatten())# Compute z to make the pringle surface.z=np.sin(-x*y)ax=plt.figure().add_subplot(projection='3d')ax.plot_trisurf(x,y,z,linewidth=0.2,antialiased=True)plt.show()

Tags:plot-type: 3Dlevel: intermediate