我正在尝试实现 Highcharts 钻取饼图,并且正在处理图表对象中的钻取数组。
在我的 AJAX JSON 中,我有一个数组数组,我需要将其转换为一个数组对数组,以便 Highcharts 拾取它。
我有什么:
data: Array[1]
Array[2]
"California"
21.56
id: "US"
name: "US",
data: Array[1]
Array[2]
"New York"
41.3
id: "US"
name: "US"
我需要它看起来像:
name: 'US',
id: 'US',
data: [
['California', 21.56],
['New York', 41.3],
...
]
我正在使用的代码给了我这个:
$.each(data[1].data, function(key, val){
drilldown.series.push({name: val['name'], id: val['name'], data: [ val['data'] ] }) ;// this doesn't work
drilldown.series.push({name: val['name'], id: val['name'], data: [ val['data'][0], val['data'][1] ] }) ;// this works
});
来 self 的服务器的 JSON 如下所示:
"data":[
{
"name":"US",
"id":"US",
"data":[
[
"California", 21.56
],
[
"Florida", 7.98
],
[
"Texas", 7.39
]
]
}
]
最佳答案
是格式问题。更改:
drilldown.series.push({name: val['name'], id: val['name'], data: [ val['data'] ] })
至:
drilldown.series.push({name: val['name'], id: val['name'], data: val['data'] })
关于Javascript 将二维数组转换为对数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35023089/