javascript - 范围选择器更改时的 Highstock 更改刻度间隔

标签 javascript jquery highcharts

我无法在以下 Jsfiddle 中更新 tickinterval:https://jsfiddle.net/rarwarrar/5xgoqjst/4/

目前是这样的:

   xAxis: {
    events: {
    setExtremes: function(e) {
      if (e.rangeSelectorButton.text === "2Hour") {
         $('#chart').highcharts().xAxis[0].tickInterval= 2700000 //45 min
         $('#chart').highcharts().redraw()
       }
    }
    }
   },

不工作。

例如,单击“2 小时”后是否可以将滴答间隔设置为每 45 分钟一次?

最佳答案

您可以在设置极值后使用 tickPositioner 函数更改刻度位置。您可以使用 Axis.update() 更新此轴的 tickPositions:

   setExtremes: function(e) {
     if (e.rangeSelectorButton.text === "2Hour") {
       this.update({
         tickPositioner: function() {
           var positions = [],
             info = this.tickPositions.info;
           for (var x = this.dataMin; x <= this.dataMax; x += 45 * 60 * 1000) {
             positions.push(x);
           };
           positions.info = info;
           return positions;
         }
       }, false)
     }
   }

在这里你可以看到一个例子它是如何工作的: https://jsfiddle.net/5xgoqjst/5/

您也应该能够在不同的范围内更改您的 tickPositions。

最好的问候。

关于javascript - 范围选择器更改时的 Highstock 更改刻度间隔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39104317/

相关文章:

javascript - Highcharts 漏斗水平

javascript - 如何在Google Maps中实现Yelp Map Marker/Tooltip Effect?

javascript - 将文本区域的每一行变成一个链接

javascript - 具有水平子菜单和半透明带的 CSS 垂直导航菜单

javascript - 检查 jquery 对象内容

javascript - 如何在 jQuery 中决定窗口的高度和滚动位置?

javascript - 将 highchart 中的 x y 点绘制为 [[x 点列表],[y 点列表]]

javascript - 如何在点击链接时保留 URL 查询参数?

javascript - 将变量的值传递给 angularjs 指令

javascript - 如果 highcharts y 轴上的数据为零,如何删除数据范围符号?