Python绘制3D图形:Axes3D

您所在的位置:网站首页 画图3d为什么保存不了 Python绘制3D图形:Axes3D

Python绘制3D图形:Axes3D

2024-07-12 20:37| 来源: 网络整理| 查看: 265

1

3D图形绘制需要(x,y,z)三组值,下面通过numpy和Axes3D函数会议3D图形。其中Axes3D是mpl_toolkits.mplot3d中的一个绘图函数,mpl_toolkits.mplot3d是Matplotlib里面专门用来画三维图的工具包。

2.mpl_toolkits.mplot3d导入方式如下:

或者:from mpl_toolkits.mplot3d import * 或者:from mpl_toolkits.mplot3d import Axes3D 或者:import mpl_toolkits.mplot3d as p3d

绘图

第一步需要导入numpy,matplotib.pyplot和Axes3D函数: import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D #这里只是用Axes3D函数,所以只导入了Axes3D

第二步建立画布,生成数据: fig=plt.figure() ax=Axes3D(fig) x=np.arange(-8,8,0.25) # 生成数据 y=np.arange(-8,8,0.25)

x,y=np.meshgrid(x,y) #生成x,y轴数据 r=np.sqrt(x2+y2) z=np.sin®/r #生成z值

第三步绘图

ax.plot_surface(x,y,z,rstride=1,cstride=1) ax.contourf(x,y,z,zdir=‘z’,offset=-2) plt.show()

整个源代码如下:

import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.mplot3d import Axes3D #这里只是用Axes3D函数,所以只导入了Axes3D fig=plt.figure() ax=Axes3D(fig) x=np.arange(-8,8,0.25) # 生成数据 y=np.arange(-8,8,0.25) x,y=np.meshgrid(x,y) #生成x,y轴数据 r=np.sqrt(x**2+y**2) z=np.sin(r)/r #生成z值 ax.plot_surface(x,y,z,rstride=1,cstride=1) ax.contourf(x,y,z,zdir='z',offset=-2) plt.show()

结果如下: 在这里插入图片描述



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3