"adaptToUpdatedData: false" 在 highcharts 中不起作用,如果我将系列放在带有 "addSeries" 的图表中
"adaptToUpdatedData: false" in highcharts don`t works if I put series in chart with "addSeries"
我使用“addSeries”在图表中添加了 2 个系列。将 属性 navigator.adaptToUpdatedData 设置为 false。然后我用“setData”更新系列数据,如果用户缩放图表,但导航器已更新。如果我只更新 1 个系列,一切正常。如何解决?
示例:
<https://jsfiddle.net/zrxv30sh/1>
y̶o̶u̶s̶s̶h̶u̶u̶l̶d̶e̶d̶e̶e̶e̶f̶i̶n̶e̶b̶o̶b̶o̶t̶
n̶a̶v̶i̶g̶a̶t̶o̶r̶:̶ ̶{̶
a̶d̶a̶p̶t̶T̶o̶U̶p̶d̶a̶t̶e̶d̶D̶a̶t̶a̶:̶ ̶f̶a̶l̶s̶e̶,̶
s̶e̶r̶i̶e̶s̶:̶ ̶[̶{̶
d̶a̶t̶a̶:̶ ̶d̶a̶t̶a̶
}̶,̶ ̶{̶
d̶a̶t̶a̶:̶ ̶d̶a̶t̶a̶2̶
}̶]̶
}̶,̶
d̶e̶m̶o̶:̶h̶t̶t̶p̶s̶:̶/̶/̶/̶j̶s̶s̶s̶s̶i̶d̶d̶el̶e̶e̶n̶e̶e̶t̶t̶
深入研究后,我发现问题出在这部分代码上:
data.forEach(function(item){
data2.push([item[0],item[1]+50,item[2]+50,item[3]+50,item[4]+50])
})
chart.series[0].setData(data);
chart.series[1].setData(data2);
chart.hideLoading();
因为 chart.series[1]
被定义为导航器系列,这意味着此 setData 配置更新了导航器系列。
更改为 chart.series[2]
解决问题。
我使用“addSeries”在图表中添加了 2 个系列。将 属性 navigator.adaptToUpdatedData 设置为 false。然后我用“setData”更新系列数据,如果用户缩放图表,但导航器已更新。如果我只更新 1 个系列,一切正常。如何解决?
示例:
<https://jsfiddle.net/zrxv30sh/1>
y̶o̶u̶s̶s̶h̶u̶u̶l̶d̶e̶d̶e̶e̶e̶f̶i̶n̶e̶b̶o̶b̶o̶t̶
n̶a̶v̶i̶g̶a̶t̶o̶r̶:̶ ̶{̶
a̶d̶a̶p̶t̶T̶o̶U̶p̶d̶a̶t̶e̶d̶D̶a̶t̶a̶:̶ ̶f̶a̶l̶s̶e̶,̶
s̶e̶r̶i̶e̶s̶:̶ ̶[̶{̶
d̶a̶t̶a̶:̶ ̶d̶a̶t̶a̶
}̶,̶ ̶{̶
d̶a̶t̶a̶:̶ ̶d̶a̶t̶a̶2̶
}̶]̶
}̶,̶
d̶e̶m̶o̶:̶h̶t̶t̶p̶s̶:̶/̶/̶/̶j̶s̶s̶s̶s̶i̶d̶d̶el̶e̶e̶n̶e̶e̶t̶t̶
深入研究后,我发现问题出在这部分代码上:
data.forEach(function(item){
data2.push([item[0],item[1]+50,item[2]+50,item[3]+50,item[4]+50])
})
chart.series[0].setData(data);
chart.series[1].setData(data2);
chart.hideLoading();
因为 chart.series[1]
被定义为导航器系列,这意味着此 setData 配置更新了导航器系列。
更改为 chart.series[2]
解决问题。