次のように、人力車を使用して、ランダムなデータでライブ更新を示す素敵なプレースホルダー グラフを作成しようとしています。
var series = [[], []];
var random = new Rickshaw.Fixtures.RandomData(150);
for(var i = 0; i < 80; i++) {
random.addData(series);
}
var throughput = new Rickshaw.Graph( {
element: document.querySelector("#throughput_chart"),
width: "300",
height: "200",
renderer: "line",
series: [{
color: "gold",
data: series[0]
}]
});
var alerts = new Rickshaw.Graph( {
element: document.querySelector("#alerts_chart"),
width: "300",
height: "200",
renderer: "line",
series: [{
color: "red",
data: series[1]
}]
});
throughput.render();
alerts.render();
setInterval(function() {
random.addData(series);
throughput.update();
alerts.update();
/* XXX: This causes the data to stop drawing properly
series.forEach(function(s) {
s.shift();
});
*/
}, 1000);
コメントアウトされた部分を除いて、これは機能します。そのまま、データを追加し続けます。つまり、グラフはますます混雑します。同じ数のデータポイントでグラフを維持するために、最後に新しい項目を追加するたびに最初の項目を削除できるようにしたいのですが、そのコードを入れるとすぐにグラフが表示されなくなりますconsole.log
配列がまだデータでいっぱいであることを示していても、任意のデータを表示します。
一度に一定数のデータポイントのみを表示するようにするにはどうすればよいですか?