Spherical co-ordinate graphics in Mathematica?

The figure is made up of simple geometric shapes and these can be easily recreated in Mathematica using equations. Here is one that is close to this plot, which IMO is less cluttered than the above, but you can always use these ideas to recreate your image exactly.

The figure is made up of simple geometric shapes and these can be easily recreated in Mathematica using equations. Here is one that is close to this plot, which IMO is less cluttered than the above, but you can always use these ideas to recreate your image exactly. ClearellipsePhi, ellipseTheta, circle circlex_ = {Cosx, Sinx}; ellipsePhix_, a_: - Pi/2 = {Cosx - a/3, Sinx + a}; ellipseThetax_, a_: 0 = {Cosx + a, Sin-x - a/2}; (*Main circle*) ParametricPlotcirclex, {x, 0, 2 Pi}, PlotStyle -> Black, Epilog -> First /@ { (*Ellipses*) ParametricPlot{ellipsePhix, ellipsePhi-x, ellipseTheta-x, ellipseThetax}, {x, 0, Pi}, PlotStyle -> {{Black, Dashed}, Black}, (*Co-ordinate axes*) Graphics TableGeometricTransformation{Arrowheads0.03, Arrow{{0, 0}, {1.2, 0}}}, ReflectionMatrixcirclex, {x, {Pi/2, -Pi/4, Pi/8}}, (*mark point, rho, phi & theta directions*) ParametricPlot{ellipsePhix, Pi/2, ellipseTheta-x, 13 Pi/20}, {x, 0, Pi/4}, PlotStyle -> {{Red, Thick}, {Blue, Thick}} /.

Linex__ :> SequenceArrowheads0.03, Arrowx, Graphics{{DirectiveDarker@Green, Thick, Arrowheads0.03, Arrow{{0, 0}, ellipsePhi-3 Pi/4}}, {DirectivePurple, DiskellipsePhi-3 Pi/4, 0.02}}, (*text*) Graphics{ TextStyle"x", Italic, Larger, 1.25 circle5 Pi/4, TextStyle"y", Italic, Larger, 1.25 circle0, TextStyle"z", Italic, Larger, 1.25 circlePi/2, TextStyle"\Rho", Italic, Larger, 0.4 circle4 Pi/11, TextStyle"\CurlyPhi", Italic, Larger, 1.1 ellipsePhiPi + Pi/5, TextStyle"\Theta", Italic, Larger, 1.1 ellipseTheta13 Pi/20 - Pi/8, TextStyle"P", Italic, Larger, 1.2 ellipsePhi-3 Pi/4 + Pi/24} }, Axes -> False, PlotRange -> 1.3 {{-1, 1}, {-1, 1}} which gives you this Although it is possible to set the angles & arrows precisely, in some places (e.g. , 13 Pi/20), I've only roughly approximated it. You really can't tell the difference in the final figure, but if you're picky you can change them and fix the positions exactly.

1 I completely missed this possible reading. I was trying to figure out what kind of spherical-coordinate graphics, like those 360° photos, or environment maps, he was trying to make. – Mr.Wizard Apr 25 at 0:18 wow, that looks nice!

– J. B. DeShaw Apr 25 at 0:31.

This alternative solution has the advantage of being created using 3D directives. As such, it was easy to wrap inside a Manipulate and you can drag it with your mouse to change the viewpoint: Manipulate Module{x = Sin\Phi Cos\Theta, y = Sin\Phi Sin\Theta, z = Cos\Phi}, Show ParametricPlot3D {{Cost, Sint, 0}, {0, Sint, Cost}, {Sint, 0, Cost}}, {t, 0, 2 \Pi}, PlotStyle -> Black, Boxed -> False, Axes -> False, AxesLabel -> {"x", "y", "z"}, ParametricPlot3D0.5*{Cost, Sint, 0}, {t, 0, \Theta}, ParametricPlot3D RotationTransform\Theta, {0, 0, 1}{Sint/2, 0, Cost/2}, {t, 0, \Phi}, Graphics3D{ {{Blue, Thick, Arrow{{0, 0, 0}, #} & /@ {{1, 0, 0}, {0, 1, 0}, {0, 0, 1}, {x, y, z}}}, {Opacity0.1, Red, Polygon{{0, 0, 0}, {x, y, 0}, {x, y, z}}, Green, Polygon{{0, 0, 0}, {x, 0, 0}, {x, y, 0}}}}, {Opacity0.05, Sphere{0, 0, 0}}, {Text"O", {-.03, -.03, -.03}, Text"X", {1.1, 0, 0}, Text"Q", {x, y, 0}, {1, 1}, Text"P", {x, y, z}, {0, -1}, Text"Y", {0, 1.1, 0}, Text"Z", {0, 0, 1.1}, Text"r", {x/2, y/2, 0}, {1, 1}, Text "\Theta", {Cos\Theta/2/2, Sin\Theta/2/2, 0}, {1, 1}, Text"\Phi", RotationTransform\Theta, {0, 0, 1}{Sin\Phi/2/2, 0, Cos\Phi/2/2}, {1, 1}}}, {{\Phi, \Pi/4}, 0.01, \Pi/2}, {{\Theta, \Pi/4}, 0.01, 2 \Pi}.

There is a problem when phi == zero – belisarius Apr 25 at 3:09 code doesn't work in ver 7 :( – J. B. DeShaw Apr 25 at 15:41 i'd like to try your code before I accept an answer... could you make it work in the prev version?

– J. B. DeShaw Apr 25 at 16:33 What error do you get?

I have just tested it successfully under Mathematica version 7.0.1. BTW, I have changed the initial phi value to 0.01 to avoid the problem reported by belisarius. – gdelfino Apr 250 at 14:42.

I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.

Related Questions