您当前的位置:首页 > IT编程 > python
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:python 利用matplotlib在3D空间中绘制平面的案例

51自学网 2021-10-30 22:59:23
  python
这篇教程python 利用matplotlib在3D空间中绘制平面的案例写得很实用,希望能帮到您。

图形:

0、import

import numpy as npimport matplotlib as mplfrom matplotlib import cmfrom matplotlib import pyplot as pltfrom mpl_toolkits.mplot3d import Axes3D

1、水平和垂直平面

# 创建画布fig = plt.figure(figsize=(12, 8),     facecolor='lightyellow'    )# 创建 3D 坐标系ax = fig.gca(fc='whitesmoke',    projection='3d'    )# 二元函数定义域平面x = np.linspace(0, 9, 9)y = np.linspace(0, 9, 9)X, Y = np.meshgrid(x, y)# -------------------------------- 绘制 3D 图形 --------------------------------# 平面 z=4.5 的部分ax.plot_surface(X,    Y,    Z=X*0+4.5,    color='g',    alpha=0.6    )  # 平面 y=4.5 的部分ax.plot_surface(X,    Y=X*0+4.5,    Z=Y,    color='y',    alpha=0.6    ) # 平面 x=4.5 的部分ax.plot_surface(X=X*0+4.5,    Y=Y,    Z=X,     color='r',    alpha=0.6    ) # -------------------------------- --------------------------------# 设置坐标轴标题和刻度ax.set(xlabel='X',  ylabel='Y',  zlabel='Z',  xlim=(0, 9),  ylim=(0, 9),  zlim=(0, 9),  xticks=np.arange(0, 10, 2),  yticks=np.arange(0, 10, 1),  zticks=np.arange(0, 10, 1)  )# 调整视角ax.view_init(elev=15, # 仰角    azim=60 # 方位角   )  # 显示图形plt.show()

图形:

2、斜平面

# 创建画布fig = plt.figure(figsize=(12, 8),     facecolor='lightyellow'    )# 创建 3D 坐标系ax = fig.gca(fc='whitesmoke',    projection='3d'    )# 二元函数定义域x = np.linspace(0, 9, 9)y = np.linspace(0, 9, 9)X, Y = np.meshgrid(x, y)# -------------------------------- 绘制 3D 图形 --------------------------------# 平面 z=3 的部分ax.plot_surface(X,    Y,    Z=X*0+3,    color='g'    )# 平面 z=2y 的部分ax.plot_surface(X,    Y=Y,    Z=Y*2,    color='y',    alpha=0.6    )# 平面 z=-2y + 10 部分ax.plot_surface(X=X,    Y=Y,    Z=-Y*2+10,    color='r',    alpha=0.7    )# -------------------------------- --------------------------------# 设置坐标轴标题和刻度ax.set(xlabel='X',  ylabel='Y',  zlabel='Z',  xlim=(0, 9),  ylim=(0, 9),  zlim=(0, 9),  xticks=np.arange(0, 10, 2),  yticks=np.arange(0, 10, 1),  zticks=np.arange(0, 10, 1)  )# 调整视角ax.view_init(elev=15, # 仰角    azim=10 # 方位角   )  # 显示图形plt.show()

图形:

软件信息:

补充:Python数据分析(Matplotlib)之3D图形

使用python绘制一个简单的三维图

我就废话不多说了,大家还是直接看代码吧~

from mpl_toolkits.mplot3d import Axes3Dimport matplotlib.pylab as pltimport numpy as npfrom matplotlib import cm#使用3d关键字来进行指定图像的三维投影fig = plt.figure()ax = fig.add_subplot(111,projection='3d')"""numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)在指定的间隔内返回均匀间隔的数字。meshgrid函数创建一个二维坐标网络,这将用于二维坐标网络,这将用于变量x和y的赋值"""u = np.linspace(-1,1,100)x,y =np.meshgrid(u,u)z = x**2 +y**2#指定行和列的步幅,以及绘制的色彩表ax.plot_surface(x,y,z,rstride=4,cstride=4,cmap=cm.YlGnBu_r)plt.show()

以上为个人经验,希望能给大家一个参考,也希望大家多多支持51zixue.net。如有错误或未考虑完全的地方,望不吝赐教。


PyQt5通过信号实现MVC的示例
python 利用openpyxl读取Excel表格中指定的行或列教程
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。