在第一种情况下,我为糟糕的英语道歉我是法国人:D
所以我最近试图在HighchartsJs上显示一些定时数据。
我尝试使用ajax接收数据,并且我创建了一个函数,添加了我想要的所有点。
但是当我尝试加载它时,我会看到光标上的信息,但没有显示任何一点! :/
这是我在AJAX请求上的成功函数:
success: function(resultat){
function addPoint(){
var chart = $('#graphResult').highcharts();
for(i in resultat){
chart.series[0].addPoint([Date.UTC(year, month, day, resultat[i]["time"].split(":")[0]), resultat[i]["value"]], true);
}
}
$('#graphResult').highcharts({
chart: {
type: 'spline',
events: {
load: addPoint
}
},
title: {
text: 'Température du jour'
},
xAxis: {
type: 'datetime',
dateTimeLabelFormats: { // don't display the dummy year
minute: '%H:%M',
hour: '%H:%M',
},
title: {
text: 'Heure'
}
},
yAxis: {
title: {
text: 'Température (°C)'
},
min: 0
},
tooltip: {
headerFormat: '<b>{series.name}</b><br>',
pointFormat: '{point.y:.2f} °C'
},
plotOptions: {
spline: {
marker: {
enabled: true
}
}
},
series: [{
name: "Température du " + String(day) + "/" + String(month) + "/" + String(year),
}]
});
}
如您所见,我有信息,但没有显示任何要点:http://puu.sh/kwfnV/ad6302810a.png
答案 0 :(得分:1)
正如您在评论中所说,问题出在服务器返回的数据中。
这是你的Json:
[{"time":"09:00:00","value":"25"},{"time":"10:00:00","value":"30"}]
“value”是字符串,那么你必须解析为Float:
chart.series[0].addPoint(
[Date.UTC(year, month, day,
resultat[i]["time"].split(":")[0]),
parseFloat(resultat[i]["value"])], true
);