Jquery Highcharts使用MySQL的实时数据填充类别
我读过很多帖子,但似乎都没有涉及到我的问题 我正在尝试完成一个脚本,该脚本在图表中显示数据 这一切都很好,但我想用从MySQL数据表中提取的数据填充这些类别。到目前为止,我已经提取了图表的数据,但没有提取类别的数据。我不知道如何使AName my类别显示在类别[]中 任何人的帮助,非常感谢提前 我的查询脚本返回: [{名称:阿纳姆,数据:[阿斯塔纳、印度、阿里克、韩亚、英国、太平洋、埃及、埃西奥、埃提哈德、海湾、韩国、科威特、文莱、斯里兰卡], {名称:Sat,数据:[93.8,86.4,85.4,83.9,84.3,84.2,89.4,88.9,80.5,83.8,82.7,80.6,83.8,80.2]}] 生成图表的脚本:Jquery Highcharts使用MySQL的实时数据填充类别,jquery,highcharts,Jquery,Highcharts,我读过很多帖子,但似乎都没有涉及到我的问题 我正在尝试完成一个脚本,该脚本在图表中显示数据 这一切都很好,但我想用从MySQL数据表中提取的数据填充这些类别。到目前为止,我已经提取了图表的数据,但没有提取类别的数据。我不知道如何使AName my类别显示在类别[]中 任何人的帮助,非常感谢提前 我的查询脚本返回: [{名称:阿纳姆,数据:[阿斯塔纳、印度、阿里克、韩亚、英国、太平洋、埃及、埃西奥、埃提哈德、海湾、韩国、科威特、文莱、斯里兰卡], {名称:Sat,数据:[93.8,86.4,85.
$(function () {
var chart;
$(document).ready(function() {
$.getJSON("charts_get_data.php", function(json) {
$('#container1').highcharts({
chart: {
renderTo: 'container',
type: 'column',
marginRight: 30,
marginBottom: 110
},
title: {
text: ' Crew Feedback Overall Satisfaction %',
x: -20, //center
style: {
fontFamily: 'Tahoma',
color: '#000000',
fontWeight: 'bold',
fontSize: '11px'
}
},
subtitle: {
text: '',
x: -20
},
xAxis: {
categories: [],
labels: {
style: {
color: '#F00',
font: '11px Tahoma, Verdana, sans-serif'
}
}
},
yAxis: {
max:100,
showFirstLabel: false,
lineColor:'#999',
lineWidth:1,
tickColor:'#666',
tickWidth:1,
tickLength:2,
gridLineColor:'#ddd',
title: {
text: 'Percentage',
style: {
fontFamily: 'Tahoma',
color: '#000000',
fontWeight: 'bold',
fontSize: '11px'
}
},
plotLines: [{
color: '#808080'
}]
},
tooltip: {
formatter: function() {
return '<b>'+ this.series.name +'</b><br/>'+
this.x +': '+ this.y;
}
},
legend: {
enabled: false
},
series: json
});
});
});
});
更新如果您能够以如下json所示的所需格式获得json响应,您可以循环使用多个名称/系列,但类别必须位于项目数组中,而不是列表中。更新了此响应的fiddle
如果不想更改json的输出,请使用以下代码
var categories=[];
var data2 =[];
var abc =[{"name":"AName","data":["Astana","India","Arik","Asiana","British","Pacific","Egypt","Ethio ","Etihad","Gulf","Korean","Kuwait","Brunei","SriLan"]},{"name":"Sat","data": [93.8,86.4,85.4,83.9,84.3,84.2,89.4,88.9,80.5,83.8,82.7,80.6,83.8,80.2]}];
$.each(abc,function(i,el)
{ if (el.name=="AName")
categories = el.data;
else
data2.push(el);
});
请参见“工作”在本例中,您可以简单地使用category=yourResult.data,顺便说一句,为什么不在从sql提取数据时解析数据。将其保留在所需的位置format@Nishith查图维迪,你好,再次感谢你的帮助。完全被这件事缠住了。如何以及在何处使用category=yourResult.data。查询返回的结果包含数组\u push$result$categories;再次感谢。这对你有用吗?看这把小提琴,我为你修改了功能。。复制它并在代码中替换,希望它能再次帮助您您好,感谢您提供的代码和小提琴,但我仍然看不出如何使用调用数据的结果。我有$.getJSONcharts\u get\u data.php,functionjson{但是我如何才能把它放到图表脚本中。正如你所看到的,我不擅长JQ!uery。使用这个>>$.getJSONcharts\u get\u data.php,functionjson{$.eachjson,functioni,el{if el.name==AName categories=el.data;else data2.pushel;};};然后在系列中使用data2,在highcharts类别中使用categories:正如我在fiddle中所做的一样,我在php函数$.getJSONcharts_get_data.php中编写了代码,functionjson{..复制它并在代码jsfiddle.net/Nishith/779gxLr6中替换,希望它能对您有所帮助
var categories=[];
var data2 =[];
var abc =[{"name":"AName","data":["Astana","India","Arik","Asiana","British","Pacific","Egypt","Ethio ","Etihad","Gulf","Korean","Kuwait","Brunei","SriLan"]},{"name":"Sat","data": [93.8,86.4,85.4,83.9,84.3,84.2,89.4,88.9,80.5,83.8,82.7,80.6,83.8,80.2]}];
$.each(abc,function(i,el)
{ if (el.name=="AName")
categories = el.data;
else
data2.push(el);
});