我在Angular 13上实现了一个amChartsv5甘特,其中每个条(类别)都是一个项目,如果一个类别出现了两次或两次以上,它们就应该堆叠起来,就像一个时间线。我设法从本地JSON中获取它并添加一些自定义属性,唯一的问题是:图表为每一项申报列一行,即使类别相符也是如此。
OBS:条形图堆叠完美,所有输入按预期顺序排列,但图表创建了3条线,其中两条为空,只有第三条由数据填充。
JSON示例:
[
{
"category": "LETICIA",
"fromDate": "2022-08-02 00:00",
"toDate": "2022-08-08 23:59",
"columnSettings": {
"fill": "#57315b"
},
"task": "Sprint #1",
"personnel": 13
},
{
"category": "LETICIA",
"fromDate": "2022-08-08 00:00",
"toDate": "2022-08-09 23:59",
"columnSettings": {
"fill": "#E6E6FA"
},
"task": "Presentation",
"personnel": 14
},
{
"category": "LETICIA",
"fromDate": "2022-08-09 00:00",
"toDate": "2022-08-19 23:59",
"columnSettings": {
"fill": "#57315b"
},
"task": "Sprint #1",
"personnel": 15
}
]
resulting in this
我试着操作JSON,但至今没有成功。有没有办法摆脱那些不必要的类别创建?
我没有设法使它适应stackblitz,但这里是我的组件和服务是如何现在:https://stackblitz.com/edit/angular-ivy-hpeih1?file=src/app/app.component.ts
1条答案
按热度按时间5sxhfpxr1#
在您的代码中,问题位于第95行:第一个月
在
data
中,有些类别会出现多次,而不是这样,您必须传递一个特定的对象常量数组,其中列出了您的类别,如下所示:完整示例:
x一个一个一个一个x一个一个二个一个x一个一个三个一个