【发布时间】:2015-12-23 17:35:10
【问题描述】:
我有一个 mysql db 为我的 highcharts 提供对。它为 pH 计提供时间戳和传感器值。当我加载图表时,我得到了显示时间戳和传感器值的工具提示,但是当它从数据库连续提供时,工具提示显示未定义为我的时间戳,但我构建的数组在那里。我想尽可能具体。我认为我错误地构建了我的 json 字符串,这就是为什么 highcharts 不知道如何处理它。
这是我对 php 页面的回调:
events: {
load: function() {
var chart = this;
var series = this.series[0];
setInterval(function() {
$.getJSON("php/dataPhIncremental.php", function(data) {
// Only add data points if the latest date in the DB is different
if (!(chart.yAxis[0].dataMax == data[0].data[0])) {
$(chart.series).each(function(i, series) {
console.log(data[0]);
series.addPoint([data[0].timestamp[0], data[0].data[0]]);
});
}
else {
console.log("did not write point"+ oldPoint + " " + data[0].data);
}
})
}, 1000);
}
认为 getJSON 会转到 php 页面并获取 json 字符串,然后让 highcharts 做它想做的事情。我错了。
我的 php json 返回对象示例:
[{"name":"pH","data":[4.76],"timestamp":["2015-12-23 12:31:42"]}]
这是用于增量回调。初始字符串包含 10 对。
【问题讨论】:
-
"2015-12-23 12:31:42"不是时间戳。当 Highcharts 期望datetime轴的时间戳以毫秒为单位时,您正在提供字符串。 -
这是您看到的唯一问题吗?您能否将我链接到有关如何使其正常工作的一些文档?如果您的想法是正确的,那么为什么初始加载会显示我以这种不正确格式提供的时间戳?
标签: javascript php json highcharts