繁体   English   中英

3D轴上的Matplotlib 2D多边形

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM