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画图初体验----曲面图和等高线图
最新推荐文章于 2024-08-09 15:34:32 发布
这篇博客介绍了如何使用Python的matplotlib库创建3D曲面图和等高线图。通过生成3D对象、设置坐标轴标签,以及使用meshgrid方法创建网格数据,博主展示了如何绘制出一个色彩丰富的曲面图,并添加了等高线以增强视觉效果。同时,还展示了如何在等高线上标注数值,并调整z轴的显示范围。
摘要由CSDN通过智能技术生成