如何在Highcharts中为轴设置最小上限?

And*_*man 8 javascript highcharts

我试图设置一个最小上限,具体来说:

  • Y轴应从0开始
  • Y轴应至少为10或更高(自动缩放)
  • Y轴的上限不应小于10.

看起来像是Highcharts所做的事情,但我似乎无法弄清楚如何.有人有这方面的经验吗?

小智 13

Highcharts似乎没有在图表创建时执行此操作的选项.然而,他们确实暴露了一些方法来询问极端并改变极端,getExtremes()setExtremes(Number min, Number max, [Boolean redraw], [Mixed animation])在他们的文档中找到.

所以,一个可能的解决方案(图表创建后):

if (chart.yAxis[0].getExtremes().dataMax < 10) {
   chart.yAxis[0].setExtremes(0, 10);
}
Run Code Online (Sandbox Code Playgroud)

yAxis[0]引用第一个y轴,我假设在这种情况下你只有一个轴.该文档解释了如何访问其他轴.

这并不理想,因为图表必须重绘不太明显,但它仍然存在.希望Highcharts可以在选项中内置这种功能.


Hal*_*and 10

仅使用选项(无事件或函数)的方法是:

yAxis: {
    min: 0,
    minRange: 10,
    maxPadding: 0
}
Run Code Online (Sandbox Code Playgroud)

这里minRange定义了轴的最小跨度.maxPadding默认为0.01会使轴长于10,因此我们将其设置为零.

这会得到与给出的结果相同的结果setExtreme.看到这个JSFiddle演示.