我有一个ageband,我用我的数据库生成PHP。输出是JSON编码的并返回到我的jQuery函数。
返回的数据如下所示:
{"result":{"20 - 29":"22","30 - 39":"78","40 - 49":"74","50 - 59":"71","60 - 69":"67","70 & Older":"0","Not Filled In (NULL)":"0"},"errors":false}
我使用AJAX / jQuery获取此数据:
if(!response.errors && response.result) {
}
关键是年龄范围,例如,年龄在20-19岁之间:22人等。
无论如何,我正在尝试使用数据创建一个饼图,我使用的是echarts(https://ecomfe.github.io/echarts/index-en.html)
包含样本数据的数据格式如下所示:
data: [{ value: 12, name: 'Moto Z' },{ value: 618, name: 'Galaxy S7 Edge' }]
我希望我的数据显示如下:
data: [{ value: 22, name: '20-29' },{ value: 78, name: '30-39' }... etc]
如何在此图表中使用我返回的数据?
答案 0 :(得分:1)
你需要遍历你的对象。
var data = []
$.each( result, function( key, value ) {
data.push({ value: value, name: key })
});
Result是Ajax响应中结果对象的内容。 新的数据'变量应根据您的需要进行格式化。
答案 1 :(得分:0)
如果您不介意使用其他外部库,例如underscore,那么:
var data = _( _.pairs( json['result'] ) ).map( function(val) {
return _.object( ['name', 'value'], val );
});