#javascript #ajax #dynamic #highcharts #linechart
#javascript #ajax #динамический #графики высоких значений #линейная диаграмма
Вопрос:
Я пытаюсь добавить вторую строку к своей диаграмме, но, похоже, у меня не получается правильно добавить строку. Моя первая строка получает новые точки с помощью ajax-запроса, и это отлично добавляет. Когда я пытаюсь добавить вторую строку к тому же графику, я добавляюсь в легенду, но она не отображается на моем графике. Вот мой код
var series = this.series[0];
var series1 = this.series[1];
setInterval(function () {
$.getJSON('http://10.175.129.10/output_file.json', function(data)
{
pp_time_offset_value =`${(data[0].pp_time_offset )}`
var par = parseInt(pp_time_offset_value);
time_offset_value =`${(data[0].time_offset )}`
var par2 = parseInt(time_offset_value);
var x = (new Date()).getTime(); // current time
//y = par;#
<!-- y= Math.random() * (500 - 200) 200 -->
series.addPoint([x, par,par2], true, true);
//series.addPoint([x, ], true, true);
console.log( par2);
});
}, 1000);
}
}
},
exporting: {
enabled: false
},
series: [{
name: 'pp_time_offset',
data: (function () {
yyy=2;
//yyy =`${(data[0].graph_value )}`
// generate an aray of random data
var data = [],
time = (new Date()).getTime(),
i;
for (i = -60; i <= 0; i ) {
data.push({
x: time i * 500,
// y: Math.random() * (-15000 - 00) 200
});
}
return data;
}())
},
{
name: 'time offset',
data: (function () {
yyy=2;
//yyy =`${(data[0].graph_value )}`
// generate an aray of random data
var data = [],
time = (new Date()).getTime(),
i;
for (i = -60; i <= 0; i ) {
data.push({
x: time i * 500,
// y: Math.random() * (-15000 - 00) 200
});
}
return data;
}())
}]
});
Ответ №1:
Итак, проблема решена, проблема заключалась в том, что я присваивал новую строку старым данным и перезаписывал ее. Решение
var series = this.series[0];
var series1 = this.series[1];
setInterval(function () {
$.getJSON('http://10.175.129.10/output_file.json', function(data)
{
pp_time_offset_value =`${(data[0].pp_time_offset )}`
var par = parseInt(pp_time_offset_value);
time_offset_value =`${(data[0].time_offset )}`
var par2 = parseInt(time_offset_value);
var x = (new Date()).getTime(); // current time
//y = par;#
<!-- y= Math.random() * (500 - 200) 200 -->
series.addPoint([x, par], true, true);
series1.addPoint([x,par2], true, true);
console.log( par2);
});
}, 1000);
}
}
},
Комментарии:
1. Добро пожаловать на SO, пожалуйста, отметьте свой ответ как принятый, чтобы другие могли сосредоточиться на вопросах, на которые все еще требуется ответ, пожалуйста.
2. Спасибо. Я пытался, но получаю сообщение об ошибке, в котором говорится, что я не могу принять ответ еще в течение 2 дней.