Я пытаюсь использовать Рикша, чтобы создать хороший замещающий график, который показывает живое обновление со случайными данными, например, так:Живого обновление Рикши график
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
показывает, что массив по-прежнему заполнен данными.
Как я могу сделать эту работу, так что я показываю только фиксированное количество точек данных за раз?
так что секрет - series.addData() кажется –