仅在更改选项后是否可以重绘图表?
IF rs = 1 Then
您可能会注意到我在plotOptions中控制系列,因为在同一个图表上会有多个系列。
let options = {
chart : {
renderTo: 'container',
type : 'line'
},
rangeSelector: {
selected: 1
},
yAxis: {
title: {
text: 'Number of downloads'
}
},
xAxis: {
type: 'datetime'
},
title: {
text: 'Title'
},
series: undefined,
plotOptions: {
series: {
compare : undefined,
showInNavigator: true
}
},
};
然后我使用jquery来改变一些选项值:
// Data needs some preparation so I inject it separately, here:
options.series = seriesOptions( preparedData )
// This correctly plots the chart
let chart = new Highcharts.stockChart( options )
这没有任何作用。当我用新的Highcharts.stockChart(选项)'替换图表重绘时。它将工作并正确地重新创建图表与适当的选项。但我并不认为这是正确的方法,因为所有选项都被重置,特别是当数据系列随后被添加到图表中时,这很烦人。
那么如何正确触发redraw(),以便用新的选项值更新图表?
答案 0 :(得分:2)
所以似乎有两种方法可以更新你在屏幕上看到的内容:
更新图表信息的简单图表更新,例如:
chart.update(
{
title: {
text: 'new text'
}
}
)
和系列更新,它更新数据本身,但保留您已有的数据,这样您就不必重新创建图表实例:
let seriesMonth = {
dataGrouping: {
forced: true,
units : [ [ 'month', [ 1 ] ] ]
}
}
chart.series[ 0 ].update( seriesMonth );
通过使用其中一个或两个,一个人应该能够得到任何想要的结果。