angular - 使用 ngx-pie-charts 从 API 填充图表数据
问题描述
我是 Angular 的新手,下面是使用 API 并获取(名称,值)对中的数据以在饼图中填充数据但图表仅显示单个记录的代码,并且我有 X 条记录,我在下面做错了什么代码。先感谢您
this.service.getsubordintesummary(30).subscribe(res=>
{
this.subordinatesummary=res as subordinatesummary[];
for(i=0;i<=this.subordinatesummary.length;i++)
{
this.widget7.device=
[
{
name:this.subordinatesummary[0].subordinates[i].Description,
value:this.subordinatesummary[0].subordinates[i].EmpCount,
}
]
}
}
})
JSON数据:
[
{
"total":10,
"subordinates":
[
{"Description":"IT sector","Ecount":1},
{"Description":"MWS sector","Ecount":3}
]
}
]
解决方案
假设您来自 api 响应的数据就像
this.data:any[]=[
{
"total":10,
"subordinates":
[
{"Description":"IT sector","Ecount":1},
{"Description":"MWS sector","Ecount":3}
]
},
{
"total":11,
"subordinates":
[
{"Description":"IT development","Ecount":5},
{"Description":"Service","Ecount":8}
]
}
]
您需要将迭代功能实现为
let chartData: any[]=[];
this.data.map(subordinate => subordinate.subordinates.map(item => {
chartData.push({name: item.Description, value: item.Ecount})
})
)
这里chartData
包含 pireChart 数据类型。就像
{
"name": "Germany",
"value": 8940000
},
{
"name": "USA",
"value": 5000000
},
由于图表只接受这种数据格式。
检查小提琴以获得完整的解决方案。如果您需要更多解释,也请告诉我。
推荐阅读
- web-scraping - Google oauthplayground - 购物 ProductId 还是更简单的搜索 productid 的方法?
- mysql - 哪个查询消耗更少的资源更新或选择
- excel - 您如何使用带有 GETPIVOTDATA() 的 vba 中 Excel R1C1 中的可用变量编写代码以提取特定的功率数据透视表数据值
- python - 替代(python)计算两个不同集合中所有点之间的距离
- python - Python print 有时会将光标向下移动一行,有时则不会
- javascript - 从 promise 对象中获取数据
- javascript - 德尔福+铬。在 Chromium 开始处理之前更新 html 源代码
- node.js - 无法查询与字符串而不是 id 匹配的参考模型的所有文档
- c# - Solr 提取上传文档无法使用 Solr 8.10.1
- python - WinXP 上的 Mercurial 5.9.3:为什么 zstd 压缩不可用?