matplotlib模块(绘图模块)使用——008_3D数据

此次绘制3D数据将使用到新的模块Axes3D

代码及注释:

import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D

fig = plt.figure()
ax=Axes3D(fig)

X=np.arange(-4,4,0.25)
Y=np.arange(-4,4,0.25)
X,Y=np.meshgrid(X,Y)      #将X,Y放到底面
R=np.sqrt(X**2+Y**2)

Z=np.sin(R)
ax.plot_surface(X,Y,Z,rstride=1,cstride=1,cmap=plt.get_cmap('rainbow'))  # rstride 行跨度   cstride 列跨度
ax.contourf(X,Y,Z,zdir='z',offset=-3,cmap='rainbow')    #绘制等高线  zdir表示压到z轴    offset表示将图投影得到的z轴坐标
ax.set_zlim(-2,2)
plt.show()

效果图:
matplotlib模块(绘图模块)使用——008_3D数据