我有一个highchart,我需要它是overscroll才能具有值:X轴可见范围的一半。
因此,当缩放级别更改时,此overscroll值也应随之更改。
我在以下jsfiddle中创建了一个示例:

https://jsfiddle.net/delux123/vgL5kd37/

我已经计算出需要为overscroll设置的值的地方,而我只是缺少应该设置该值的方式。
由于初始缩放级别(范围)设置为1m,因此初始overscroll将在一分钟(1 * 60 * 1000 / 2)中具有一半的毫秒。

假定计算和更新需要在afterSetExtremes事件上发生(当X轴的极端值发生变化时),我添加了一种方法来计算新的overscroll的值,并且该值显示在警报框中。

我想知道,当用户手动更改缩放级别时,如何将此值用于更新图表?

最佳答案

您可以使用xAxis.update功能来设置计算值。看到:

  xAxis: {
    overscroll: (1 * 60 * 1000) / 2, // default range is 1m, so default overscroll is 1m / 2
         events: {
          afterSetExtremes: function() {
            var value = getOverscroll(this.chart)
            this.update({
                overscroll: value
            })
          }
        }
  },


演示:https://jsfiddle.net/BlackLabel/24vgr1eb/
API:https://api.highcharts.com/class-reference/Highcharts.Axis#update

那是你的初衷吗?

10-07 14:37