Chart = xy Scatter
我有一个图表,我在其上设置了水平轴十字轴 - 轴值= 200.该图表如下所示:
现在我希望颠倒y轴标签的顺序。但是当我检查“相反顺序的值”时,x轴标签会跳过x轴线,如下所示:
我希望x轴标签与x轴线相似。我一直在尝试各种VBA代码和各种excel选项。如:
.TickLabels.Offset(这会使x轴标签偏离x轴更远,不接受负数)
我想在x轴标签上添加一个大的MarginTop值,但我无法弄清楚VBA代码,并且该选项在Excel中显示为灰色。
非常感谢任何可能的想法或解决方案。
答案 0 :(得分:1)
如果您可以使用位于图表底部的x轴,则可以通过将TickLabelPosition更改为等于xlTickLabelPositionHigh来将标签返回到轴“下”。如果您还在“最大轴值”处穿过y轴,看起来效果会更好。这会将轴格式设置在底部(实际上是最大值)和标签。
您可以从普通菜单中获取所有这些设置。如果你需要VBA来做这个,这是一个起点:
Sub reverseAxisAndLabelAtBottom()
Dim cht As Chart
Dim x_axis As Axis
Dim y_axis As Axis
'using the ActiveChart... assumes it is selected
Set cht = ActiveChart
Set x_axis = cht.Axes(xlCategory)
Set y_axis = cht.Axes(xlValue)
y_axis.ReversePlotOrder = True
x_axis.TickLabelPosition = xlTickLabelPositionHigh
y_axis.Crosses = xlAxisCrossesMaximum
End Sub
我还尝试通过添加虚拟系列并在次轴上放置反转的y轴来实现此目的。这样可以使标签正确,但是y轴会被强制转到最右边。我不会称之为“理想”的做法。
带有一些随机数据的图片之前/之后。