// 原始数据
const data = [{
type: '政治',
area: '朝阳',
num: 10
},{
type: 金融',
area: '朝阳',
num: 20
},{
type: 贸易',
area: '海淀',
num: 200
},{
type: 政治',
area: '海淀',
num: 200
},{
type: 信息',
area: '海淀',
num: 100
}]
// 处理之后的数据
tableData: [{
area: '朝阳',
'政治': 10,
'金融': 20,
'贸易': 0,
'信息': 0,
sum: 30 // 所有维度的和
}, {
area: '海淀',
'政治': 200,
'金融': 0,
'贸易': 200,
'信息': 100,
sum: 500
]
最终的表格,我用excel画的😳
你这个处理数据有点特别,看结果数据要求的是没出现的属性也要算出0来。
刚开始我想的是完成收集和合计:
如果原数据能保证所有地区的所有属性都有值,这样就解决了。但如果无法保证的话,那只能换一种方式,姑且认为原数据出现的属性就是所有属性了,那就是第一次遍历的时候就要汇总所有属性。