如何在matplotlib中关闭圆柱体的末端

时间:2016-06-29 21:01:22

标签: python matplotlib

我正在尝试关闭' matplotlib中的圆柱体,但我不知道该怎么做。到目前为止,我有一个打开两端的圆柱体,其代码如下:

PreventSubmitFlag

运行此代码会生成以下图像enter image description here

如何用实心圆圈(即磁盘)关闭圆柱体的末端?

1 个答案:

答案 0 :(得分:1)

与您的其他代码类似的快速简便方法是使用从r=0r=R的条带生成曲面。在plt.show()之前添加以下行:

R = np.array([0,R])
# cap at t=0
X, Y, Z = [p0[i] + np.outer(R, np.sin(theta)) * n1[i] + np.outer(R, np.cos(theta))*n2[i] for i in [0, 1, 2]]
ax.plot_surface(X, Y, Z, edgecolors = "r", alpha=.4, linewidth = .1)
# cap at t=mag
X, Y, Z = [p0[i] + v[i]*mag + np.outer(R, np.sin(theta)) * n1[i] + np.outer(R, np.cos(theta))*n2[i] for i in [0, 1, 2]]
ax.plot_surface(X, Y, Z, edgecolors = "r", alpha=.4, linewidth = .1)

这里的颜色更多用于说明目的,主要是因为你可以看到条带。结果如下: enter image description here