RE: Graphics3D axes
- To: mathgroup at smc.vnet.net
- Subject: [mg66670] RE: [mg66640] Graphics3D axes
- From: "David Park" <djmp at earthlink.net>
- Date: Fri, 26 May 2006 04:17:46 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
Laura, The DrawGraphics Mathematica package that can be purchased through my web site ($50) amoung other things contains a DrawAxes command for Graphics3D. The syntax is... DrawAxes[{xorg, yorg, zorg}, {min, max}, styles] where {min, max} are the displacements from the axes origin in plot coordinates. styles gives a list of line styles for the 3 axis. The axes could be labeled by adding separate Text statements. With DrawGraphics it is easy to add all these things into a plot because all elements are treated as graphics primitives. Thus multiple surfaces, axes and Text statements can all be easily combined in one plot statement. Here is an example of its use that combines a plot of four spheres with a labeled axes. Needs["DrawGraphics`DrawingMaster`"] sphere[center_, radius_][p_, t_] := center + radius{Cos[t]Cos[p], Sin[t]Cos[p], Sin[p]} style = {IndianRed, AbsoluteThickness[2]}; Draw3DItems[ {ParametricDraw3D[ Evaluate[sphere[#, 1][p, t]], {p, -Pi/2, Pi/2}, {t, 0, 2Pi}] & /@ ({{-2, -2, -2}, {2, 2, 2}, {-2, -2, 2}, {2, 2, -2}}0.7), DrawAxes[{0, 0, 0}, {-3, 3}, {style, style, style}], MapThread[ Text[#1, #2, #3] &, {{x, y, z}, {{3.3, 0, 0}, {0, 1, 0}, {0, 0, 3.3}}, {{0, 0}, {-2, 0}, {0, 0}}}] }, ImageSize -> 300, Boxed -> False, NeutralLighting[0.8, 0.8, 0.2], Background -> AliceBlue]; I used special positioning for the labels of the axes so the y axes label would not be written over one of the spheres. David Park djmp at earthlink.net http://home.earthlink.net/~djmp/ From: Laura [mailto:grzz_76 at hotmail.com] To: mathgroup at smc.vnet.net This must be a common query but I haven't been able to find the answer: For plotting 3D graphics (plot3D or Graphics3D), how do you get the standard axes: (1,0,0), (0,1,0), (0,0,1)? I've tried all sorts of options from AxesEdges to changing Views. Basically, I'd like my 3D plots to appear with the axes set at the origin. z | (0,0,0) |______ y / / x Thank you for any pointers.