Hig*_*iga 2 python 3d plot matplotlib
我是 Python 初学者。我正在尝试使用 matplotlib 绘制与 Z 轴相切的圆。我知道如何在 3D 中绘制球体,但不知道如何在 3D 图中绘制圆/环。有人可以帮我解决代码吗?提前致谢!
您需要常规导入以及 3D 工具包
import matplotlib as mpl
from mpl_toolkits.mplot3d import Axes3D
import numpy as np
import matplotlib.pyplot as plt
Run Code Online (Sandbox Code Playgroud)
您需要一个支持 3D 的axes对象
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
Run Code Online (Sandbox Code Playgroud)
你需要一个包含在yz平面内的圆
theta = np.linspace(0, 2 * np.pi, 201)
y = 10*np.cos(theta)
z = 10*np.sin(theta)
Run Code Online (Sandbox Code Playgroud)
现在我们可以绘制原始圆,作为示例,绘制一些绕z轴旋转的圆,其圆心也放置在距z轴固定距离(等于圆的半径)处,因此它们是与它相切
for i in range(18):
phi = i*np.pi/9
ax.plot(y*np.sin(phi)+10*np.sin(phi),
y*np.cos(phi)+10*np.cos(phi), z)
Run Code Online (Sandbox Code Playgroud)
最终我们放置一个垂直轴和一个图例
ax.plot((0,0),(0,0), (-10,10), '-k', label='z-axis')
ax.legend()
Run Code Online (Sandbox Code Playgroud)
是时候看看我们得到了什么了
plt.show()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
16306 次 |
| 最近记录: |