0

我有一个年龄带,我用我的数据库中的 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]

我如何将返回的数据与此图表一起使用?

4

2 回答 2

1

您需要遍历您的对象。

var data = []
$.each( result, function( key, value ) {
  data.push({ value: value, name: key })
});

结果是 Ajax 响应中结果对象的内容。新的“数据”变量应根据您的需要进行格式化。

于 2017-06-13T12:08:58.523 回答
0

如果您不介意使用下划线等其他外部库,那么:

var data = _( _.pairs( json['result'] ) ).map( function(val) {
  return _.object( ['name', 'value'], val );
});
于 2017-06-13T12:25:19.740 回答