# Set axes in 3d plot

Is there a way to set the kind of axes shown in a 3d plot? Seems like you should be able to specify boxed, axes, etc. in the show command.

edit retag close merge delete

Sort by ยป oldest newest most voted

You can write your own python function to draw axes, something like:

def axes(xmin=-1,xmax=1,ymin=-1,ymax=1,zmin=-1,zmax=1,**kwds):
ex = vector((1,0,0))
ey = vector((0,1,0))
ez = vector((0,0,1))
G =  line3d([xmin*ex,xmax*ex],**kwds)
G += line3d([ymin*ey,ymax*ey],**kwds)
G += line3d([zmin*ez,zmax*ez],**kwds)
return G

axes(xmax=2,zmax=4,color='red',thickness=2).show()

more

You can do frame=False and axes=True, but doubtless you're talking about something more substantial, and these leave ... less than desirable results. I'm not sure why the axes are in the wrong place sometimes, though I believe there is a ticket open for this.

more

Thanks for the help. I really went a few rounds with the plot3d options this afternoon and ended up using the line command to create some axes. Just wanted to make sure I hadn't missed something in the documentation somehow.

( 2012-05-24 00:25:29 +0100 )edit
1

That's probably what I would do at this point too. It would be great to have a nice axes option for 3d graphics.

( 2012-05-24 13:10:09 +0100 )edit

See http://trac.sagemath.org/ticket/19442 for a belated followup ticket.

( 2015-10-20 20:33:08 +0100 )edit