views:

21

answers:

0

Hi everybody, I'm using matplotlib to plot some data as 2d curves in a 3d axes.

I use the ax=axes3d.Axes3D() to define my axes and ax.plot(x,y, zs='z') to plot my 2d curves in the 3d space.

Now I want to add something that looks like what is on this page http://matplotlib.sourceforge.net/examples/mplot3d/polys3d_demo.html, but I want to enter directly the coordinates of the vertex !

in this example they have a fixed z array, and they plot polygons with (x,y) vertex whereas what I want is z(x), and (x,y) vertex !

Does anyone know how to do something like that ?

And actually I don't need the collection thing, I just want to plot one big square in a n arbitrary direction.

I tried to simply enter the coordinates and use 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')

and it indeed plots a square, but i can't (or don't know how to) fill the face !!!

If anyone has a trick ...