![](/img/trans.png)
[英]Plot 3D Cube and Draw Line on 3D in Python
[英]Showing end point of the 3d line: Python 3D plot
我在 python 中使用以下代碼制作了一個 3D 圖。 這里三個數組 x、y 和 z 用於繪圖。 我想在圖中顯示數組的最后一個點(或 3D 線的終點)。 我使用了在 2d 繪圖中使用的方法,即,我要求使用此命令僅繪制每個數組的最后一個點ax.plot(x[-1],y[-1],z[-1],'o')
。 但它不起作用。
import numpy as np
from matplotlib import pyplot as plt
from mpl_toolkits.mplot3d import Axes3D # noqa: F401 unused import
x=np.linspace(0,2*np.pi)
y=np.sin(x)
z=np.cos(x)
fig = plt.figure()
ax = fig.gca(projection='3d')
ax.plot(x, y, z, lw=1)
ax.plot(x[-1],y[-1],z[-1],'o') # This line doesn't work
plt.show()
import numpy as np
from matplotlib import pyplot as plt
from mpl_toolkits.mplot3d import Axes3D # noqa: F401 unused import
x=np.linspace(0,2*np.pi)
y=np.sin(x)
z=np.cos(x)
fig = plt.figure()
ax = fig.gca(projection='3d')
ax.plot(x, y, z, lw=1)
ax.scatter(x[-1],y[-1],z[-1],'-') # This should do the job
plt.show()
添加顏色和標簽
ax.scatter(x[-1],y[-1],z[-1],'-',c="yellow",label="End Point")
plt.legend()
plt.show()
關於錯誤原因的附加說明:
你告訴 python 給你畫一個ax.plot
1 點。 這是不可能的,因為你不能只用 1 個點畫一條line
。 因此,您告訴它繪制scatter
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.