扁平化接口堆叠图chart数据接口转换
/** * x抽 xAxisName * legend is typeName * {{value}} 指标 * 数据结构处理 */ export default function getStackChartData(data: [], xAxisName: string, typeName: string, value: any) { let map = {} // 临时存放 let destDatas: any[] = [] let xAxisData: any[] = [] data.forEach((ai, i) => { if (!xAxisData.includes(ai[xAxisName])) { xAxisData.push(ai[xAxisName]) } if (!map[ai[typeName]]) { destDatas.push({ name: ai[typeName], data: [(ai[value])] }) map[ai[typeName]] = ai } else { for (let j = 0; j < destDatas.length; j++) { let dj = destDatas[j] if (dj.name === ai[typeName]) { dj.data.push((ai[value])) break } } } }) // let dataSet = { // xAxisData: xAxisData, // destDatas: destDatas // } // return dataSet return { xAxisData, destDatas } }