爱的方程式(3D),方程式3d,from mpl_too
from mpl_toolkits.mplot3d import axes3dimport matplotlib.pyplot as pltimport numpy as npdef implicitplot3d(fn, bbox=(-1.5,1.5)): xmin, xmax, ymin, ymax, zmin, zmax = bbox*3 fig = plt.figure() ax = fig.add_subplot(111, projection='3d') A = np.linspace(xmin, xmax, 50) B = np.linspace(xmin, xmax, 20) A1,A2 = np.meshgrid(A,A) for z in B: X,Y = A1,A2 Z = fn(X,Y,z) cset = ax.contour(X, Y, Z+z, [z], zdir='z') for y in B: X,Z = A1,A2 Y = fn(X,y,Z) cset = ax.contour(X, Y+y, Z, [y], zdir='y') for x in B: Y,Z = A1,A2 X = fn(x,Y,Z) cset = ax.contour(X+x, Y, Z, [x], zdir='x') ax.set_zlim3d(zmin,zmax) ax.set_xlim3d(xmin,xmax) ax.set_ylim3d(ymin,ymax) plt.show()implicitplot3d(lambda x,y,z: (x*x + 2*y*y + z*z -1)**3 - x*x*z*z*z - y*y*z*z*z/10.)#该片段来自于http://byrx.net
评论关闭