如您所知,除非您专门设置yAxis: { min: 0, max: 100}
之类的内容,否则Highcharts会自动计算yAxis的最大值和最小值。
但是在我的情况下,我并不总是确定我的数据的最大值是什么,我想将yAxis.max
设置为我加载的数据集中最大的值。
我现在提出的解决方法是从后端导出yMax
,然后在前端使用setExtremes(0, yMax)
来实现此目的。但鉴于高图的高性能和自动化性质,是否可以仅从前端完成此操作?
谢谢你们!
答案 0 :(得分:1)
这可以通过在events.load中扫描数据来完成:
events: {
load: function () {
var points = []
this.series.forEach(function (entry) {
entry.data.forEach(function (theData) {
points.push(theData.y);
});
});
this.yAxis[0].update({
max: Math.max.apply(Math, points)
});
}
}
这是一种非常冗长的方法,你可能会崩溃一些逻辑。您还需要确保要检查数据。
直播demo。