我一直在填充一个图表,其中嵌入了来自多维PHP数组($ result)的数据。当将数组打印为JSON时(使用print json_encode($ result,JSON_NUMERIC_CHECK);),我得到以下数组结构:
[
{
"name":"Array1",
"data":[
1,
2,
3
]
},
{
"name":"Array2",
"data":[
1,
2,
3
]
}
]
我使用此数组在下面的代码中填充了我的图表。过去这种方法工作得很好,但是在我更改了阵列的设置之后,现在必须进行重新设计。
$.getJSON("../data.php", {id: escape(tableName)}, function(json) {
chartOptions.chart1.xAxis.categories = json[0]['data'];
chartOptions.chart1.series[0].data = json[1]['data'];
});
在进行一些更改后,我的$ result数组的新设置如下:
{
"Array1":{
"data":[
"1",
"2",
"3"
]
},
"Array2":{
"data":[
"1",
"2",
"3"
]
}
}
因此,我用来填充Highcharts的代码不再起作用。如果有人可以帮助我理解如何重做$ .getJSON代码,使其与新的数组结构一起使用,我将非常感谢。还是告诉我是否必须坚持旧的阵列设置?谢谢。
答案 0 :(得分:1)
据我所知(未经测试),您只需要更改:
null
收件人
$.getJSON("../data.php", {id: escape(tableName)}, function(json) {
chartOptions.chart1.xAxis.categories = json[0]['data'];
chartOptions.chart1.series[0].data = json[1]['data'];
});
JSON结构的更改从字典数组更改为字典字典,因此您不再通过索引访问它,而是通过键(Array1,Array2)访问它。