如何在Highcharts动态更改y轴的单位?

如何在Highcharts动态更改y轴的单位?

我有一个y轴格式化器:

yAxis:{ title:{ text:'Custom Title' }, labels: { formatter: function () { var maxElement;//I want to set it to max value at y axis labels if(maxElement > gb){ return (this.value / gb).toFixed(1) + " GB"; }else if(maxElement > mb){ return (this.value / mb).toFixed(1) + " MB"; }else if(maxElement > kb){ return (this.value / kb).toFixed(1) + " KB"; } else { return (this.value) + " B"; } } }, ... 

我在这里问了一个问题: 如何在highcharts中获得ay轴的最大值? 关于如何获得y轴标签的最大值。 但是我觉得我应该像beforeLoad和beforeRedraw方法一样。

如何动态更改y轴标签的单位(因为如果禁用/关闭右侧最大y轴标签更改系列)?

关于我的问题的其他解决方案是受欢

在这种情况下,您可以通过以下行获得max
this.axis.max;

所以你的function应该是:

 formatter: function() { var maxElement = this.axis.max; if (maxElement > gb) { return (this.value / gb).toFixed(1) + " GB"; } else if (maxElement > mb) { return (this.value / mb).toFixed(1) + " MB"; } else if (maxElement > kb) { return (this.value / kb).toFixed(1) + " KB"; } else { return (this.value) + " B"; } }​ 

你可以看到它在这里工作