Javascript Highcharts ajax负载
我使用海图有问题 我想从我的php API中获取一个数组,并将结果作为数据点处理 代码如下:Javascript Highcharts ajax负载,javascript,php,jquery,ajax,highcharts,Javascript,Php,Jquery,Ajax,Highcharts,我使用海图有问题 我想从我的php API中获取一个数组,并将结果作为数据点处理 代码如下: $(function () { $(document).ready(function () { Highcharts.setOptions({ global: { useUTC: false } }); var
$(function () {
$(document).ready(function () {
Highcharts.setOptions({
global: {
useUTC: false
}
});
var chart;
$('#graph_temperature').highcharts({
chart: {
zoomType: 'x',
type: 'area'
},
credits: {
enabled: false
},
title: {
text: 'Temperature'
},
legend: {
enabled: false
},
xAxis: {
type: 'datetime'
},
series: [{
name: 'Temperature',
color: '#ff851b',
marker: {
enabled: false
},
data: (function () {
var data_graph;
$.ajax({
url: "https://urlhidden.com/ajaxsql.php?f=get_all_temperature",
type: "GET",
async: false,
success: function (data) {
data_graph = [].concat(data);
$("#debug").html(data_graph);
}
});
return data_graph;
})()
}]
})
})
});
[[1394908920000,20.87], [1394908980000,20.87], [1394909040000,20.87], [1394909100000,20.87], [1394909160000,20.87], [1394909220000,20.87],...]
我的数组如下所示:
$(function () {
$(document).ready(function () {
Highcharts.setOptions({
global: {
useUTC: false
}
});
var chart;
$('#graph_temperature').highcharts({
chart: {
zoomType: 'x',
type: 'area'
},
credits: {
enabled: false
},
title: {
text: 'Temperature'
},
legend: {
enabled: false
},
xAxis: {
type: 'datetime'
},
series: [{
name: 'Temperature',
color: '#ff851b',
marker: {
enabled: false
},
data: (function () {
var data_graph;
$.ajax({
url: "https://urlhidden.com/ajaxsql.php?f=get_all_temperature",
type: "GET",
async: false,
success: function (data) {
data_graph = [].concat(data);
$("#debug").html(data_graph);
}
});
return data_graph;
})()
}]
})
})
});
[[1394908920000,20.87], [1394908980000,20.87], [1394909040000,20.87], [1394909100000,20.87], [1394909160000,20.87], [1394909220000,20.87],...]
我的问题是海图不能画出我的图表。Axis,标题正常,但我的区域缺失
为了调试,我使用了以下行:
$(“#调试”).html(数据图)
代码>
正如我在“debug”div中看到的那样,数组的格式很好
当我手动放置整个阵列时:
数据:[[13949089220000,20.87],[139490890000,20.87],[1394909040000,20.87],[13949091000000,20.87],[139490916000,20.87],[1394909200000,20.87],…],
它工作得很好
有人想帮我吗?我还没有测试我的代码,但它应该可以工作。我希望你能理解我的想法。
$(function () {
$(document).ready(function () {
Highcharts.setOptions({
global: {
useUTC: false
}
});
var chart;
params = {
chart: {
zoomType: 'x',
type: 'area'
},
credits: {
enabled: false
},
title: {
text: 'Temperature'
},
legend: {
enabled: false
},
xAxis: {
type: 'datetime'
},
series: [{
name: 'Temperature',
color: '#ff851b',
marker: {
enabled: false
}
}]
};
$.ajax({
url: "https://urlhidden.com/ajaxsql.php?f=get_all_temperature",
type: "GET",
async: false,
context:document.body,
success: function (data) {
//data should be converted to json object using [..]
//remove data variable in this format you should get the data
data = [[1394908920000,20.87], [1394908980000,20.87], [1394909040000,20.87]];
params.series[0].data = data;
$('#graph_temperature').highcharts(params);
}
});
})
});
已更新
我想我理解你的想法,但遗憾的是,它不起作用。以下是结果:。在顶部,您可以看到通过直接手动插入数组完成的图形,在底部,您可以看到使用my或your获得的图形code@user3434194你得到了什么?我刚刚测试了我的代码,它工作得很好。我会更新我的代码+屏幕。我在第一条评论中添加了我得到的结果的屏幕截图,如果我使用我的或你的代码,效果也是一样的。这张图没有render@orybon您有什么错误?来自ajax的数据可能有错误。在ajax成功声明中,我使用了伪数据(用于模仿)data=[[1394908920000,20.87],[1394908980000,20.87],[1394909040000,20.87];我找到了!我刚刚添加了这一行:data=JSON.parse(data);现在它开始工作了。似乎我的API的结果不是数组的实例。是你的指示让我找到了解决办法,非常感谢你的帮助。