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.)
There will be a maintenance on the server on November 14th 2025.
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.)
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.
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.
Please start posting anonymously - your entry will be published after you log in or create a new account.
Asked: 2010-08-18 20:08:20 +0100
Seen: 3,597 times
Last updated: Oct 22 '11
use a colormap for implicit_plot3d
The tachyon object used for rendering plots
Combination of lambda function and plot3d(?)
Multiple 3D plots in one panel -> graphics_array and 3D?
Plotting successive 3D plots in a for loop (only the last one can be plotted!)
Getting range from things which aren't integers yet, but will be
Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.