javascript - Angular -> 将 JSON 数据解析为 Chart.js 条形图
问题描述
我有个问题。我有一个分组输出的数据列表。现在我想将值(例如 erzeugenGes)输出到条形图。图表模块本身可以工作。仅在用于评估的分组数据上失败。附上我的代码和清单
1,2,3,4,5,6,7,8,9,10,11,12 是 ChartLabels 的月份
1.
1: [{…}]
2: [{…}]
3: [{…}]
4: [{…}]
5: [{…}]
6: [{…}]
7: [{…}]
8: [{…}]
9: Array(1)
0: {jahr: 2020, monat: 9, erzeugungGes: 901.04, verbrauchGes: 952.22, eigenverbrauch: 515.24, …}
length: 1
__proto__: Array(0)
10: Array(2)
0:
bezogen: 252.18
eigenverbrauch: 201.62
eingespeist: 140.94
erzeugungGes: 342.53
jahr: 2019
monat: 10
verbrauchGes: 453.75
__proto__: Object
1:
bezogen: 232.07
eigenverbrauch: 174.13
eingespeist: 102.37
erzeugungGes: 276.48
jahr: 2020
monat: 10
verbrauchGes: 406.19
__proto__: Object
length: 2
__proto__: Array(0)
11: Array(1)
0: {jahr: 2019, monat: 11, erzeugungGes: 291.87, verbrauchGes: 761.16, eigenverbrauch: 238.38, …}
length: 1
__proto__: Array(0)
12: [{…}]
/// 和数据
getData() {
this.ds.getAuswertungJahr().subscribe(res => {
this.daten = res;
this.data = this.daten.reduce((r, a) => { console.log("a", a); console.log('r', r); r[a.monat] = [...r[a.monat] || [], a]; return r; }, {}); console.log("group", this.data);
this.barChartData[0].data = [];
for (let i = 0; i < this.data.lenght; i++) {
this.barChartData[0].data.push(this.data[i]);
}
})
}
谢谢
解决方案
推荐阅读
- python - 如何在 discord.py 的 discord.ext.tasks 循环中使用上下文?
- javascript - 每次点击都无法选中 mat-checkbox
- mysql - SQL 查询与 2 个表的连接,并在第二个表中创建具有多个外键的新列集
- ruby-on-rails - ActionMailer 添加 cc 和 bcc 作为选项
- javascript - 我们可以从 javascript 中的单个对象键值中获取对象吗?
- mysql - 在MySQL之间/结束时用“x”或“$”替换数值
- c# - 是否可以使用函数大括号自动完成?c# 视觉工作室
- http - 如何正确编码 UTF-8 中的 HTTP 响应字节?
- r - 从两个独立的数据库中根据多个条件选择行
- java - 在启动消费者应用程序时自动调用应用程序(在消费者项目中添加为不可执行的jar)方法