0

我有一个动态更新的折线图。我想在最后一点添加一个标记。随着图表滚动并添加新点,我想删除以前的标记并将其添加到最近的点。因此,此折线图的“尖端”将只有一个标记。

任何帮助将不胜感激。

4

2 回答 2

4

您可以在 plotOptions 中禁用标记,然后对于您希望标记出现的点,将数据设置为对象,如下所示:

http://jsfiddle.net/jlbriggs/JVNjs/281/

data: [7,12,16,32,{y:64,marker:{enabled:true,radius:5,fillColor:'#c00'}}]
于 2013-03-07T18:05:42.897 回答
0

您可以禁用除最后一个点之外的每个点的标记。

开始时:

  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 += 1) {
            data.push({
                x: time + i * 1000,
                y: Math.random(),
                marker: {
                  enabled: i === 0
                }
            });
        }
        return data;
    }())
}]

并在添加新点之前的最后一个点禁用标记:

      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.data[series.data.length - 1].update({
                  marker: { enabled: false }
                }, false)
                series.addPoint([x, y], true, true);
            }, 1000);
        }
    }

你可以试试这个。 http://jsfiddle.net/687215jj/2/

于 2017-06-19T04:00:52.030 回答