我使用Highcharts并使用;
初始化数据var graph = Highcharts.chart('container', {
................
series: [{
color: 'red',
data: [[5, 2], [800, 2], [801, 1],[802, 3],[803, 2],[804, 2],[1200, 3]]
},
.............
}
我遇到的问题是在渲染初始图表后我想要动态添加更多数据。
在这种情况下,我使用了更新;
graph.update(
{
series: [{
color: 'blue',
data: [[100, 2], [101, 2], [102, 1] ]
},
});
这可行,但它取代了整个数据集。 那么,我应该如何使用update()函数添加点而不是替换它们呢?
我看到人们正在使用其他功能,例如addPoint()和setData(),但我无法让它们正常工作...... 提前致谢 格斯
答案 0 :(得分:2)
请参阅此现场演示: http://jsfiddle.net/kkulig/opr4Lgpe/
我在循环中添加所有点。 redraw
函数的addPoint
参数(第二个)设置为false
- 每次添加后都不需要重绘图表。重绘最终只执行一次。
var chart = Highcharts.chart('container', {
series: [{
data: [1, 2]
}]
});
var pointsToAdd = [4, 5, 6, 6, 7];
pointsToAdd.forEach(function(p) {
chart.series[0].addPoint(p, false);
});
chart.redraw();
API参考: https://api.highcharts.com/class-reference/Highcharts.Series#addPoint