11

我使用一种 y 轴标签样式,其中每个数字左对齐放置在其各自的水平网格线的顶部,如下图所示。

在 HighCharts 中唯一的复杂情况是轴标签有时会与柱形图中的第一列重叠。

更新的演示:例如,请参阅此图表:http: //jsfiddle.net/NWsgz/1/

highcharts中的y轴问题

我曾尝试使用 来实现这一点xAxis.minpadding,但该属性似乎对柱形图没有影响。Highcharts 有没有办法达到我想要的效果?从理论上讲,我可以通过使条形非常窄来获得效果,但我正在寻找另一种解决方案。

4

3 回答 3

13

我想出了一个解决方法,但它并不完美。

  1. 使用从图表中分离 yAxisyAxis.offset
  2. 使用超长刻度线模拟向左延伸的网格线

像这样:

yAxis: {
  offset: 30,
  tickLength: 30, // Same value as offset
  tickPosition: "inside",
  tickWidth: 1,
  tickColor: "black", // The same as your gridLine color
  labels: { 
    align: 'left',
    x: 0,
    y: -8 // Position labels above their gridLine/tickMark
  }
}                                   

有关演示,请参阅http://jsfiddle.net/supertrue/NWsgz/2/

为什么不理想

我希望我的 gridLines 使用破折号样式(例如dashStyle: 'longdash'),但似乎没有办法将破折号样式应用于刻度线。

我很想知道是否有办法做到这一点,或者更好的解决方法。

于 2013-04-09T16:44:54.153 回答
4

它不适用于分类轴 - 在该类型中,轴被分为相等的类别,因此不允许最小/最大填充。

可能的解决方案是使用标准轴,但使用formatter轴,请参阅:http: //jsfiddle.net/NWsgz/4/

于 2013-04-10T10:37:09.827 回答
1

您可以为 yAxis http://api.highcharts.com/highcharts#yAxis.offset使用偏移参数

于 2013-04-09T12:59:50.983 回答