9

如果您使用动态样条更新打开此 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;
            })()
        }]

series: [{
            name: 'Random data',
            data: []
        }]

但它不会增加分数。有什么我想念的吗?

4

2 回答 2

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);
}
于 2013-03-01T18:29:33.520 回答
3

的第三个参数addPoint是设置如果你在添加这个之后要移动一个点。

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

改变

series.addPoint([x, y], true, true);

series.addPoint([x, y], true);

演示

参考

于 2013-03-01T17:38:46.213 回答