作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Python 初学者。我正在尝试使用与 Z 轴相切的 matplotlib 绘制一个圆。我知道如何在 3D 中绘制球体,但不知道如何在 3D 绘图中绘制圆/环。有人可以帮我处理代码吗?提前致谢!
最佳答案
您需要通常的导入以及 3D 工具包
import matplotlib as mpl
from mpl_toolkits.mplot3d import Axes3D
import numpy as np
import matplotlib.pyplot as plt
你需要一个启用 3D 的 axes
对象
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
你需要一个包含在平面 y-z 中的圆
theta = np.linspace(0, 2 * np.pi, 201)
y = 10*np.cos(theta)
z = 10*np.sin(theta)
现在我们可以绘制原始圆,例如,一些围绕 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)
最终我们放置了一个垂直轴和一个图例
ax.plot((0,0),(0,0), (-10,10), '-k', label='z-axis')
ax.legend()
是时候看看我们得到了什么
plt.show()
关于python - 如何在 Matplotlib 中绘制 3D 圆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56870675/
我是一名优秀的程序员,十分优秀!