MMA三维绘图自带的刻度不是常见的三根垂直的直线样式,想自己造个漂亮的带刻度的o-xyz坐标轴,但是目前刻度不知道怎么加上去...
ClearAll["Global`*"]
axes[x_, y_, z_, f_, a_] :=
Graphics3D[
Join[{Red, Arrowheads[a]},
Arrow[Tube[{{0, 0, 0}, #}]] & /@ {{x, 0, 0}, {0, y, 0}, {0, 0,
z}}, {Text[
Style["x", FontSize -> Scaled[f]], {0.9*x, 0.1*y, 0.1*z}],
Text[Style["y", FontSize -> Scaled[f]], {0.1 x, 0.9*y, 0.1*z}],
Text[Style["z", FontSize -> Scaled[f]], {0.1*x, 0.1*y, 0.9*z}]}]]
G[x_, y_, z_] := Pi - (x + y) - z;(*绘制C=Pi-(A+B)*)
(*直接把表达式写在绘图函数里通常绘图速度会快些*)
Show[ContourPlot3D[
Cos[x]^2 + Cos[y]^2 - Sin[Pi - x - y] == 0, {x, 0, Pi}, {y, 0,
Pi}, {z, 0, 1.2 Pi}, ContourStyle -> {Opacity[0.9], Cyan},
Mesh -> {{0}},
AxesEdge -> {{0, Pi}, {0, Pi}, {0, 1.2 Pi}}(*Show的最后结果,是参考的第一个图*),
MeshFunctions -> Function[{x, y, z}, G[x, y, z]],
MeshStyle -> {Red, Thick}, Boxed -> False],
ContourPlot3D[
Pi - (x + y) - z == 0, {x, 0, Pi}, {y, 0, Pi}, {z, 0, 1.2 Pi},
MeshStyle -> None, Boxed -> False, Axes -> False,
ContourStyle -> {Opacity[0.6], Brown}, BoundaryStyle -> None],
axes[Pi, Pi, Pi, 0.05, 0.02]]

上图自制的o-xyz坐标轴 不知如何给他带上刻度(以1为单位,每段再分5份不带刻度)