如何只显示highcharts上的最后一个数据点?

时间:2015-05-04 12:32:37

标签: javascript highcharts

我有一个多线图表,每天都会动态更新(或更多)。我知道开始和结束日期(它将持续2个月)。

我想只显示最后一个数据条目的点,而不显示较旧的点。基本上,我希望我的系列看起来像这样:http://jsfiddle.net/jlbriggs/JVNjs/281/

onepage.php

或更准确地说,像这样:http://i.stack.imgur.com/FpQF1.jpg

问题是我的图表在白天多次更新。所以我想在正确的日期显示最后更新的数据并仅显示最后一个点。我试图通过使用“lenght - 1”来选择系列的最后数据,但由于我不是JS的专家,所以它没有用。

有办法吗? 如果需要,谢谢并要求更好的解释。我不是很清楚。

1 个答案:

答案 0 :(得分:1)

您可以将标记添加到最后一个点,然后在setInterval中,从中删除并添加到新点。

load: function () {

                // set up the updating of the chart each second
                var series = this.series[0],
                    len = series.data.length;

                //set marker on last point
                series.data[len - 1].update({
                    marker: {
                        enabled: true
                    }
                });


                setInterval(function () {
                    var x = (new Date()).getTime(), // current time
                        y = Math.random();

                    len = series.data.length;

                    series.data[len - 1].update({
                        marker: {
                            enabled: false
                        }
                    }, false);

                    series.addPoint({
                        x: x,
                        y: y,
                        marker: {
                            enabled: true
                        }
                    }, true, true);
                }, 1000);
            }

示例:http://jsfiddle.net/rjpjwve0/