Python画图初体验----曲面图和等高线图

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

fig = plt.figure()
ax = Axes3D(fig)     #生成一个3d对象
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.set_xlabel('X label',color='r') #设置x坐标
ax.set_ylabel('Y label',color='r')
ax.set_zlabel('Z label')
ax.plot_surface(X, Y, Z,rstride=1,cstride=1,cmap=plt.cm.hot)#生成一个曲面
#ax.contourf(X,Y,Z,offset=2,alpha=0.75,cmap=plt.cm.hot)#为等高线填充颜色
ax.contour(X, Y, Z, offset=-2, colors='black')#生成等高线 offset参数是等高线所处的位置

fig=plt.figure()

bx=fig.add_subplot(111)#再生成一个字图

C=bx.contour(X,Y,Z) #如果想要在等高线上标出相应的值,需要重新生成一个对象,不能是3d对象
bx.clabel(C,inline=True,fontsize=10) #在等高线上标出对应的z值
ax.set_zlim(-2,2)#设置z的范围
plt.show()
Python画图初体验----曲面图和等高线图_第1张图片 Python画图初体验----曲面图和等高线图_第2张图片

你可能感兴趣的:(Python画图初体验----曲面图和等高线图)