修复了Highcharts中的y轴标签宽度

qfi*_*der 16 highcharts

我正在构建一个数据表示,其中两个Highcharts图表垂直堆叠,旨在共享相同的x轴单位和对齐.像这样:

Stacked Highcharts

请注意,由于两个图表的y轴范围不同,因此y轴标签的宽度不同,因此图表本身的宽度略有不同,从而破坏了良好的x轴对齐.

能够固定图表的宽度(或相反的y轴标签)以确保两个图表排成一行会很棒.我探索了api并且直接在各种生成的元素上设置样式但没有运气.似乎可以使用自定义标签格式化器来实现这个目标,但是库存格式化器(如果我没有定义任何自定义)可以很好地缩写大数字等.

关于如何修复图表或y轴标签宽度的想法?

Tor*_*nsi 27

如果设置chart.marginLeft选项,它将覆盖自动大小标签,以便Y轴对齐.


Paw*_*Fus 1

有点 hacky 的方式,但应该有效:

  • 为两个 xAxis 设置width,例如 400px
  • 为所有轴(xAxis 和 yAxis)设置right,例如 20px

现在 yAxis 应该具有相同的宽度和相同的极值等。

另一个(也许甚至更好)的解决方案是为 Highcharts 使用两个窗格。它的工作方式与 Highstock 完全相同,请参阅示例:http ://www.highcharts.com/stock/demo/candlestick-and-volume