[英]How to parsing data JSON to series in highcharts.js packedbubble type
我的 json 输出如下:
0: {api: 'Cars', method: 'GET', total: 3}
1: {api: 'Cars', method: 'POST', total: 4}
2: {api: 'Trucks', method: 'POST', total: 6}
3: {api: 'Boats', method: 'GET', total: 6}
以及我想重新创建数组以填充 Highchart.js 中的系列,类型为:packedbubble
[
Cars: [
{name: "GET", value: 3},
{name: "PUT", value: 0},
{name: "POST", value: 4},
{name: "DELETE", value: 0}
],
Trucks: [
{name: "GET", value: 0},
{name: "PUT", value: 0},
{name: "POST", value: 6},
{name: "DELETE", value: 0}
],
Boats: [
{name: "GET", value: 6},
{name: "PUT", value: 0},
{name: "POST", value: 0},
{name: "DELETE", value: 0}
]
]
建议的格式对于packedbubble
系列不正确。 检查API 参考: https ://api.highcharts.com/highcharts/series.packedbubble.data
如果你想转换你的 json 数据,你可以这样做:
let data = [{api: 'Cars', method: 'GET', total: 3},
{api: 'Cars', method: 'POST', total: 4},
{api: 'Trucks', method: 'POST', total: 6},
{api: 'Boats', method: 'GET', total: 6}];
let cars = [],
trucks = [],
boats = [];
data.forEach(obj => {
if (obj.api === "Cars") {
cars.push({
name: obj.method,
value: obj.total
})
} else if (obj.api === "Trucks") {
trucks.push({
name: obj.method,
value: obj.total
})
} else if (obj.api === "Boats") {
boats.push({
name: obj.method,
value: obj.total
})
}
})
...
series: [{
name: 'Cars',
data: cars
}, {
name: 'Trucks',
data: trucks
}, {
name: 'Boats',
data: boats
}]
演示: https ://jsfiddle.net/BlackLabel/juxg964q/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.