请教一下 三维柱状图中 坐标标签显示的问题
mathematica吧
全部回复
仅看楼主
level 3
haoling121810 楼主
以下是代码:
val = {{2, 1}, {-1, -2}};
img_test =
Show[BarChart3D[val, ChartLayout -> "Grid",
Method -> {"Canvas" -> None}, Axes -> True,
BoxRatios -> {1, 1, 0.6},
ChartLabels -> {{"x1", "p1"}, {"x1", "p1"}},
LabelStyle -> Directive[Black, Large], PlotRangePadding -> None,
ChartElementFunction -> "Cube", PlotRangePadding -> None,
ColorFunctionScaling -> False,
ColorFunction -> (Blend[{{Max[val], Lighter[Red, 1/5]}, {0,
LightGray}, {Min[val], Lighter[Blue, 1/5]}}, #] &),
FaceGrids -> {{1, 0, 0}, {0, -1, 0}},
BarSpacing -> {0, 0}, AxesEdge -> {{1, 0}, {-1, -1}, {1, 1}},
AxesStyle -> Directive[30], ImageSize -> 600, TicksStyle -> Thick,
ViewPoint -> {-Pi/3, 1, 1}]]
这是运行结果:
请问 怎么把 x1 p1 坐标 向上移,移动到z=0的水平面上?
2019年09月29日 02点09分 1
吧务
level 15
在字符串里适当加点空格似乎是最简单有效的改善方法……比如:
ChartLabels -> {{" x1", " p1"}, {"x1 ", "p1 "}}
用Epilog选项塞进去大概也可以,但那就比较麻烦了。
2019年10月05日 05点10分 2
不好意思,好几天没登陆了 刚看到 吧主 这样好像不行啊 我试了下 我想把坐标向上平移到 过原点的水平面上。
2019年10月09日 14点10分
@haoling121810 那只能用Epilog慢慢调了……
2019年11月02日 12点11分
@haoling121810 调整高度的话可以用类似的方法,在字符串后面塞换行就行了(\n)
2019年11月02日 14点11分
@hjq447285628 对哦,我怎么没想到……
2019年11月02日 14点11分
1