highcharts - Highcharts:如何根据显示的数据动态设置yAxis的最大值?
问题描述
我在这里有两个图表,我在其中使用蜡烛的静态数据。让我们考虑第二个 Y 轴,其中几个给定蜡烛的最大值是 215。
在我提供的代码中,这个 y 轴的最大值设置为:
yAxis: [{
...
}, {
max: 215*4
}],
从那里我们可以看到我将最大值的值硬编码为215*4
. 我需要做的是,能够动态获取当前值并将其乘以 4。
我试过这样:
yAxis: [{
...
}, {
max: this.getExtremes().dataMax * 4
}],
但似乎不起作用,似乎this.getExtremes()
只能在事件中使用。那么有什么办法可以根据当前显示的最大值来设置最大值吗?
我也尝试了以下(但它仍然不起作用)。
render: function() {
let yAxisExtremesVolumeMax = this.yAxis[1].getExtremes().dataMax;
this.yAxis[1].update({
max: yAxisExtremesVolumeMax * 4
});
},
无论如何,我不确定我是否要这样检查,因为render
事件可能被调用太多次,所以我更喜欢其他选择。
解决方案
尝试将此解决方案与负载一起使用,而不是渲染。在渲染回调中进行更新会创建无限循环。代码:
chart: {
events: {
load() {
let chart = this,
max = chart.series[1].dataMax;
chart.yAxis[1].update({
max: max * 4
})
}
}
},
推荐阅读
- ios - UISearchBar 过滤自定义 UITableViewCells
- r - 使用`read.csv`时如何防止分隔符成为输入的一部分?
- typescript - 如何调用方法来运行索引的所有实例
- mysql - Mysql docker 文件未运行:断言失败:log0recv.cc:3561:err == DB_SUCCESS 线程 139674864518912
- arrays - C - 动态分配 3 维数组的函数(使用 malloc)
- nuxt.js - Nuxt.js 中特定布局的自定义转换
- python - 将矩阵(或二维数组)存储为字典中每个键的值
- c - 在将变量声明为布尔类型和!之后,这段代码的含义是什么?
- excel - VBA Excel用公式改变文本框的功能
- ruby-on-rails - 如何在 Rails 中真正发送电子邮件