# Limiting the display range of a 3d plot

Is there any way to limit the display range of a 3d plot, using either jmol or tachyon? (Something similar to xmax and ymax with a 2d plot.)

edit retag close merge delete

Sort by ยป oldest newest most voted

I ran into this issue recently, and I ended up implicitly plotting a simple function like

sage: implicit_plot3d(x,(x,-10,10),(y,-10,10),(z,-10,10),opacity=0)+...


(where the ... were the rest of the functions I wanted to plot). This at least gave the graph a controllable scale, and then I adjusted the other functions to be within the box created by my first function.

more

I'm pretty sure the answer to this question is: "no". Robert Bradshaw and I implemented almost all of the 3D plotting code, and I specifically remembering not getting to this. I also just looked at the relevant source code and didn't see anything:

sage: f(x,y)=x^2+y^2
sage: G = plot3d(f, (-1,1), (-2,2))
sage: G.show??


By the way, the way this should work once it is implemented is that you'll type

sage: G.show(zmax=2)


and the plot would get cutoff at 2 instead of at 5 like it is currently shown.

I'm also not sure what the best way to implement this is. For some renderers it might easy -- just pass an option on to clip the viewing rectangle. One could also try to clip the 3d scene itself, but this could be arbitrarily hard.

more

Please start posting anonymously - your entry will be published after you log in or create a new account.