Javascript Highcharts加载数据而不打印
我试图将数据动态加载到Highcharts中,但遇到了问题。我尝试了很多方法,数据似乎被加载到JS中,但图形没有绘制出来 目前,这是我在jQuery的Javascript Highcharts加载数据而不打印,javascript,json,highcharts,Javascript,Json,Highcharts,我试图将数据动态加载到Highcharts中,但遇到了问题。我尝试了很多方法,数据似乎被加载到JS中,但图形没有绘制出来 目前,这是我在jQuery的文档就绪函数中的代码: options = { chart: { renderTo: 'container', zoomType: 'x', animation: true, }, title: { text: null }, subtitle:
文档就绪
函数中的代码:
options = {
chart: {
renderTo: 'container',
zoomType: 'x',
animation: true,
},
title: {
text: null
},
subtitle: {
text: null
},
xAxis: {
type: 'datetime',
title: {
text: null
},
},
yAxis: {
title: {
text: 'Size',
},
},
legend: {
enabled: false
},
series: [{
data: []
}]
}
$.ajax({
type: "GET",
url: "works/load_data.php",
data: "id=3&mdate=2012-02&mxdate=2012-03",
success: function (items) {
var obj = eval(items).load;
var series = { data: [] };
$.each(obj, function (itemNo, item) {
series.data.push(item);
});
options.series.push(series);
},
cache: false,
});
var chart = new Highcharts.Chart(options);
图表上什么也没发生。但如果我登录到控制台图表选项,我会得到以下结果:
我的PHP会像这样回显数据:
data={load:[{x:Date.UTC(2012,2,1,7,15),y:0.012},{x:Date.UTC(2012,2,1,7,30),y:0.068}…]}
至少对我来说似乎还可以。但它不起作用:(有人能告诉我我做错了什么吗?)谢谢。AJAX是异步的,这意味着调用发生在您渲染图表之后。尝试在成功事件之后粘贴图表创建,如下所示:
$.ajax({
type: "GET",
url: "works/load_data.php",
data: "id=3&mdate=2012-02&mxdate=2012-03",
success: function (items) {
var obj = eval(items).load;
var series = { data: [] };
$.each(obj, function (itemNo, item) {
series.data.push(item);
});
options.series.push(series);
var chart = new Highcharts.Chart(options);
},
cache: false,
});
有些实时演示总是很方便:)。@Styxxy很难,因为ajax get请求。@TCB13没问题。顺便说一下,你不应该使用EVE(查找“EVE是邪恶的”),而应该考虑JSON.PARSER()。