Highcharts - 没有初始数据的动态图

use*_*736 8 highcharts

如果使用动态样条线更新打开此JSFiddle,它会在每秒开始更新之前加载20个点的系列.

我不想显示任何初始数据,并让间隔在它们进入时添加点.

所以我改变了:

series: [{
            name: 'Random data',
            data: (function() {
                // generate an array of random data
                var data = [],
                    time = (new Date()).getTime(),
                    i;

                for (i = -19; i <= 0; i++) {
                    data.push({
                        x: time + i * 1000,
                        y: Math.random()
                    });
                }
                return data;
            })()
        }]
Run Code Online (Sandbox Code Playgroud)

series: [{
            name: 'Random data',
            data: []
        }]
Run Code Online (Sandbox Code Playgroud)

但它并没有增加分数.有什么我想念的吗?

mar*_*rty 6

更改您的加载函数,以便在添加20个值之前不适用shift参数,请参阅此jsfiddle

load: function() {

    // set up the updating of the chart each second
    var series = this.series[0],
        maxSamples = 20,
        count = 0;
    setInterval(function() {
        var x = (new Date()).getTime(), // current time
            y = Math.random();
        series.addPoint(
            [x,y]
            , true
            , (++count >= maxSamples)
        );
    }, 1000);
}
Run Code Online (Sandbox Code Playgroud)


Ric*_*ann 3

第三个参数addPoint是设置添加这个点后是否要移动一个点。

那么,到底发生了什么? 您正在添加一个点,然后将其删除。

改变

series.addPoint([x, y], true, true);
Run Code Online (Sandbox Code Playgroud)

series.addPoint([x, y], true);
Run Code Online (Sandbox Code Playgroud)

演示

参考