wolfram-mathematica - Mathematica 中的球坐标图

标签 wolfram-mathematica

是否可以在 mathematica 中创建这样的球坐标系图形,还是应该使用 photoshop?我问是因为我想要高分辨率的图形,但是互联网上的很多文件在放大时都是颗粒状的。

这是图像:

enter image description here

最佳答案

该图形由简单的几何形状组成,可以使用方程在 Mathematica 中轻松重新创建。这是一个接近 this情节,IMO 不像上面那样困惑,但你总是可以使用这些想法来准确地重新创建你的图像。

Clear[ellipsePhi, ellipseTheta, circle]
circle[x_] = {Cos[x], Sin[x]};
ellipsePhi[x_, a_: - Pi/2] = {Cos[x - a]/3, Sin[x + a]};
ellipseTheta[x_, a_: 0] = {Cos[x + a], Sin[-x - a]/2};
(*Main circle*)
ParametricPlot[circle[x], {x, 0, 2 Pi},
 PlotStyle -> Black,
 Epilog -> First /@ {
    (*Ellipses*)

    ParametricPlot[{ellipsePhi[x], ellipsePhi[-x], ellipseTheta[-x], 
      ellipseTheta[x]}, {x, 0, Pi},
     PlotStyle -> {{Black, Dashed}, Black}],
    (*Co-ordinate axes*)

    Graphics[
     Table[GeometricTransformation[{Arrowheads[0.03], 
        Arrow[{{0, 0}, {1.2, 0}}]}, 
       ReflectionMatrix[circle[x]]], {x, {Pi/2, -Pi/4, Pi/8}}]],
(*mark point, rho, phi & theta directions*)

ParametricPlot[{ellipsePhi[x, Pi/2], ellipseTheta[-x, 13 Pi/20]}, {x, 
   0, Pi/4},
  PlotStyle -> {{Red, Thick}, {Blue, Thick}}] /. 
 Line[x__] :> Sequence[Arrowheads[0.03], Arrow[x]],
Graphics[{{Directive[Darker@Green, Thick], Arrowheads[0.03], 
   Arrow[{{0, 0}, ellipsePhi[-3 Pi/4]}]},
  {Directive[Purple], Disk[ellipsePhi[-3 Pi/4], 0.02]}}],
(*text*)
Graphics[{
  Text[Style["x", Italic, Larger], 1.25 circle[5 Pi/4]],
  Text[Style["y", Italic, Larger], 1.25 circle[0]],
  Text[Style["z", Italic, Larger], 1.25 circle[Pi/2]],
  Text[Style["\[Rho]", Italic, Larger], 0.4 circle[4 Pi/11]],
  Text[Style["\[CurlyPhi]", Italic, Larger], 
   1.1 ellipsePhi[Pi + Pi/5]],
  Text[Style["\[Theta]", Italic, Larger], 
   1.1 ellipseTheta[13 Pi/20 - Pi/8]],
  Text[Style["P", Italic, Larger], 1.2 ellipsePhi[-3 Pi/4 + Pi/24]]}]
},
 Axes -> False, PlotRange -> 1.3 {{-1, 1}, {-1, 1}}
 ]

这给了你这个

enter image description here

尽管可以精确设置角度和箭头,但在某些地方(例如 13 Pi/20),我只是粗略地估计了它。你真的无法分辨最终数字的区别,但如果你很挑剔,你可以改变它们并准确地固定位置。

关于wolfram-mathematica - Mathematica 中的球坐标图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5774073/

相关文章:

wolfram-mathematica - 组合两个列表和一个数组以创建 3D 数据列表

wolfram-mathematica - 在Mathematica中的笔记本中列出所有用户定义的变量和函数

wolfram-mathematica - 强制图像在 Mathematica 中以实际尺寸显示

wolfram-mathematica - 如何在具有不透明度的 FillingStyle 中添加自定义 ColorFunction

wolfram-mathematica - 在 Mathematica 的某个级别应用 EuclideanDistance

wolfram-mathematica - Mathematica "AppendTo"函数问题

wolfram-mathematica - 如何在 Mathematica 中使用 Shapiro-Wilk 检验来检验双变量正态性?

wolfram-mathematica - 如何在数学中给定旋转轴动画 3d 图

performance - “MapList”函数

wolfram-mathematica - 获取手动绘制点的坐标