在具有大数据集的 HighStock 时间序列中设置额外的点属性

Setting additional point attributes in HighStock time series with large data sets

我知道您可以将任意数据传递到您的时间序列点中,例如:

new Highcharts.Chart( {
   ...,
   series: [{
         name: 'Foo',
         data: [ { y : 10.0, customData : 'value 1' },
                 { y : 20.0, customData : 'value 2' },
                 { y : 30.0, customData : 'value 3' } ]
      }]
} );

但是,我注意到当您的时间序列由大型数据集(超过 1000 个点)组成时,这在 HighStock 中不太适用。

例如,这是一个有效的 fiddle http://jsfiddle.net/gparajon/c5fej775/ (less than 1000 points, which also happens to be the default turboThreshold). And here's the same fiddle, with more data, which breaks the tooltip formatter: http://jsfiddle.net/gparajon/5om258az/

有什么解决方法吗?

谢谢!

控制台中的错误是 bug 并且它并没有真正连接为什么您无法访问格式化程序中的额外信息。

图表和股票图表的区别在于股票图表进行数据分组,这意味着在格式化程序回调中您收到不包含额外数据的分组点(它们应该如何分组?)。

示例:https://jsfiddle.net/g04La2qh/1/

如果您禁用数据分组,您将收到带有额外数据的未分组积分。

dataGrouping: {
    enabled: false
  },

示例:https://jsfiddle.net/g04La2qh/2/