在第二个活的更新是通过添加一个计时器到load
事件中的chart
chart: {
//...
events: {
load: function() {
// set up the updating of the chart each second
var series = this.series[0];
setInterval(function() {
var x = (new Date()).getTime(), // current time
y = Math.random();
series.addPoint([x, y], true, true);
}, 1000);
}
}
//...
}
所以,当图表已完成加载,setInterval
被称为完成,每个调用所提供的功能1000毫秒(即每秒); setInterval
的回调仅通过series.addPoint
增加了一个新点。
您只需添加一个load
事件处理函数,该函数将设置合适的setInterval
调用来添加您的新点。在更实际的情况下,您将使用setTimeout
启动AJAX调用以获取更多数据,然后在AJAX的成功回调中添加新点并再次呼叫setTimeout
以安排在另一秒之后再次发起AJAX调用(或任何时间间隔在你的应用程序中工作)。
Highcharts documentation看起来相当全面,每个示例(其中有很多)都有一个方便的查看代码的“查看选项”按钮,因此设置应该是相当直接的,并且有一点研究。
我该如何停止highcharts的加载点是新值是否等于前一个? – ivcode 2014-07-13 12:56:01
@ivcode:我有一段时间没有触及Highcharts,所以我不知道,也许问一个新问题。 – 2014-07-13 17:06:51
找到了更好的图表库吗? – ivcode 2014-07-14 02:38:49