[英]Matplotlib 2D polygon in 3D axes
我正在使用matplotlib在3D軸上將某些數據繪制為2D曲線。 我使用ax = axes3d.Axes3D()
定義軸,並使用ax.plot(x, y, zs='z')
在3D空間中繪制2D曲線。
現在,我想添加類似於此頁面上的內容http://matplotlib.sourceforge.net/examples/mplot3d/polys3d_demo.html ,但是我想直接輸入頂點的坐標。 在此示例中,它們具有固定的z
數組,並繪制具有頂點(x,y)
多邊形,而我想要的是z(x)
和(x,y)
頂點。 有誰知道該怎么做?
實際上,我不需要收集的東西,我只想在任意方向繪制一個大正方形。
我試圖簡單地輸入坐標並使用ax.plot()
:
verts = np.array([[0,0,0], [0,1,0], [1,1,1], [1,0,1], [0,0,0]])
ax.plot(verts[:,0], verts[:,1], verts[:,2], zdir='y')
它確實繪制了一個正方形,但我無法(或不知道如何填充)臉部。
我的矩形將從0變為10。因此MAX = 10。 我首先要做的是嘗試定義z和x之間的軸。 z = MAX-x是我的選擇。
然后我先為x的每一個小增量繪制此軸,從而創建矩形。 這是代碼:
anArray = []
for i in range(0, 101, 1):
z = float(i)/10
#print "x: ", x
y = 10 - z
#print "y: ", y
for a in range(0, 101, 1):
anArray.append([float(a)/10, y, z])
#endfor
#endfor
verts = np.array(anArray)
ax.plot(verts[:,0],verts[:,1],verts[:,2], zdir='y')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.