在具有大数据集的 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
},
我知道您可以将任意数据传递到您的时间序列点中,例如:
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
},