处理数据[ { "column1": "公司简称", "column2": "风险级别:已失陷资产、高风险资产、低风险资产", "column3": "Sum_sum" }, { "column1": "申能集团", "column2": "低风险资产", "column3": 11 }, { "column1": "申能集团", "column2": "高风险资产", "column3": 11 }, { "column1": "申能集团", "column2": "已失陷资产", "column3": 11 }, { "column1": "申欣环保", "column2": "高风险资产", "column3": 1 } ]使用echarts绘制一个堆叠柱状图
时间: 2023-07-06 13:40:01 浏览: 53
好的,这是一个 JSON 格式的数据,您需要先将其转换成适合 Echarts 绘图的数据格式。可以通过以下代码进行转换:
```
var data = [
{"column1": "公司简称", "column2": "风险级别:已失陷资产、高风险资产、低风险资产", "column3": "Sum_sum"},
{"column1": "申能集团", "column2": "低风险资产", "column3": 11},
{"column1": "申能集团", "column2": "高风险资产", "column3": 11},
{"column1": "申能集团", "column2": "已失陷资产", "column3": 11},
{"column1": "申欣环保", "column2": "高风险资产", "column3": 1}
];
var categories = [];
var riskLevels = ["已失陷资产", "高风险资产", "低风险资产"];
data.forEach(function (item) {
if (categories.indexOf(item.column1) === -1) {
categories.push(item.column1);
}
});
var series = [];
riskLevels.forEach(function (level) {
var levelData = [];
categories.forEach(function (category) {
var value = 0;
data.forEach(function (item) {
if (item.column1 === category && item.column2 === level) {
value = item.column3;
}
});
levelData.push(value);
});
series.push({
name: level,
type: 'bar',
stack: '总量',
data: levelData
});
});
var chart = echarts.init(document.getElementById('chart'));
var option = {
tooltip: {
trigger: 'axis'
},
legend: {
data: riskLevels
},
xAxis: {
type: 'category',
data: categories
},
yAxis: {
type: 'value'
},
series: series
};
chart.setOption(option);
```
这个代码中,我们首先定义了数据,然后通过遍历数据获取类别和风险级别的数据,最后将数据转换成 Echarts 所需要的格式,并且绘制图表。
您只需要将代码中的 `document.getElementById('chart')` 替换成您需要放置图表的元素 ID,即可在页面上绘制堆叠柱状图。