首页 > 解决方案 > 在订阅回调中更新系列时,Highcharts 不会重绘

问题描述

我有以下代码:

ngOnInit() {
this.service.getSoftwareUsage().subscribe((res) => {
  res.result['data'].forEach(element => {
    this.chartOptions.series.push({ name: element.key, data: [element.value], type: 'column' });//Isn't displayed
  });
  console.log(this.chart);
});
this.chartOptions.series.push({ name: "test", data: [4], type: 'column' }); //Is displayed
}

这“有效”或至少 90%。每一行都被执行,console.log 在图表中显示了新系列,但是它们没有显示出来,我试图在订阅的调用之外手动添加一个,并且那个显示在图表上。

我能做些什么来解决这个问题?

标签: typescripthighchartsangular8subscribe

解决方案


因为我找不到让它自动重绘的方法。我最终将图表包装在 *ngIf 中,一旦正确构建了 chartOptions 和系列,它就会设置为 true。

这使得它在不再添加数据时创建图表。隐藏在加载微调器下可以解决问题


推荐阅读