如何通过单击启用所有禁用的highcharts-angular图例?

时间:2019-01-14 15:06:33

标签: angular highcharts

任何人都可以帮助我吗,实际上是在我的highcharts-angular应用程序饼图中,它具有10个产品图例,并且用户希望使用图例在产品方面分析数据。因此,在禁用10个中的6-7个图例之后,用户再次希望具有10个产品图例的完整饼图。因此,在这种情况下,如何单击即可启用所有图例。请看下面

please see my code here

第一步:默认情况下,所有图例均已启用

enter image description here

Step2:用户出于某种分析目的禁用了6-7个图例

enter image description here

第3步:现在,用户希望通过单击启用所有图例,而不是一一启用。

我走过许多线程,但大多数情况下,它们涉及不同的问题,但与该特定问题无关。请在这里分享您的建议。预先感谢。

1 个答案:

答案 0 :(得分:1)

使用@ViewChild可以获取Highchart组件的实例(向其添加模板变量以进行查询),然后查看该对象内部的内容,可以找到此类对象道具路径:chart.legend.allItems其中包含一个图例数组,每个图例都有setVisible方法。

这是一个令人眼花stack乱的事情:

https://stackblitz.com/edit/angular-y2wvhc

<highcharts-chart #chart ...

...

  @ViewChild('chart') chart;
  reenable() {
    this.chart.chart.legend.allItems.forEach(item => item.setVisible(true));
  }