matplotlib是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。而且
也可以方便地将它作为绘图控件,嵌入GUI应用程序中。
今天安装numpy,scipy,matplotlib都安装一天,简直是痛不欲生啊,因此建议用装包利器pip来安装,废话不多说了引用官方文档一个示列看看效果。
from scipy import *
from scipy.special import jn, jn_zeros
import pylab
from mpl_toolkits.mplot3d import Axes3D
from matplotlib import cm
def drumhead_height(n, k, distance, angle, t):
nth_zero = jn_zeros(n, k)
return cos(t)*cos(n*angle)*jn(n, distance*nth_zero)
#绘制图形
theta = r_[0:1:50j]
radius = r_[0:1:50j]
x = array([r*cos(theta) for r in radius])
y = array([r*sin(theta) for r in radius])
z = array([drumhead_height(1, 1, r, theta, 0.5) for r in radius])
#设置坐标轴
fig = pylab.figure()
ax = Axes3D(fig)
ax.plot_surface(x, y, z, rstride=1, cstride=1, cmap=cm.jet)
#设置X,Y,Z轴的标签
ax.set_xlabel("x")
ax.set_ylabel("Y")
ax.set_zlabel("Z")
pylab.show()