Я кодирую динамическую диаграмму (приложение монитора), которая xAxis является типом даты и времени, каждые три секунды я извлекаю данные из БД и добавляю новую точку для каждой серии (насколько это хорошо). Проблема возникает с галочкой, каждый раз, когда я добавить новый пункт все тики взять текущее время вместо того, чтобы их первоначальное значение, когда они были созданы, это мой кодКак добавить xAxis.tick динамически
var chart1Obj = {
chart: {
renderTo: 'welcome-chart',
type: 'line',
animation: Highcharts.svg, // don't animate in old IE
// marginRight: 10,
events: {
load: function() {
// set up the updating of the chart each second
var series = this.series;
setInterval(function() {
Meteor.call("getGraphData", function (error, json) {
if (error) {
console.error("Welcome.graphData() failed\n", error);
} else {
temp = JSON.parse(json);
series[0].addPoint([temp.running], true, true);
series[1].addPoint([temp.queued], true, true);
series[2].addPoint([temp.suspended], true, true);
}
});
}, 3000);
}
}
},
title: {
text: 'Job monitoring'
},
xAxis: {
type: 'datetime',
tickPixelInterval: 150,
labels: {
formatter: function() {
var myTime = new Date();
return Highcharts.dateFormat('%H:%M:%S', myTime.getTime());
}
}
},
yAxis: {
title: {
text: 'Number of Task'
},
floor: 0,
plotLines: [{
value: 0,
width: 1,
color: '#808080'
}]
},
exporting: {
enabled: false
},
series: [{
name: 'Running',
data: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
width: 1,
color: '#00FF00'
}, {
name: 'Queued',
width: 2,
data: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
color: '#FFFF00'
}, {
name: 'Suspended',
width: 3,
data: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
color: '#FF0000'
}]
};
Highcharts.setOptions({
global: {
useUTC: false,
}
});
var chart1 = new Highcharts.Chart(chart1Obj);
поэтому вопрос, что я делаю неправильно ? или что мне не хватает?
это не сработало, теперь оно подскажет 19:00:00 для каждого тика независимо от времени. как это было до этого и почему я добавил эту строку для новой Date() –
Но почему 'new Date()'? Он всегда возвращает фактическое время .. Я думаю, проблема в том, что у вас есть такие данные: 'data: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 , 0] '- где каждая точка имеет временную метку (для дня), увеличенную на 1 мс. –
ОК, этот вид смысла, единственная причина, по которой я это сделал» [0, 0, 0, 0, 0, 0, 0 , 0, 0, 0, 0, 0, 0, 0, 0] "должно было создать 20 x тиков, как бы вы инициализировали эту диаграмму ???? –