任何人都可以帮助我吗,实际上是在我的highcharts-angular应用程序饼图中,它具有10个产品图例,并且用户希望使用图例在产品方面分析数据。因此,在禁用10个中的6-7个图例之后,用户再次希望具有10个产品图例的完整饼图。因此,在这种情况下,如何单击即可启用所有图例。请看下面
第一步:默认情况下,所有图例均已启用
Step2:用户出于某种分析目的禁用了6-7个图例
第3步:现在,用户希望通过单击启用所有图例,而不是一一启用。
我走过许多线程,但大多数情况下,它们涉及不同的问题,但与该特定问题无关。请在这里分享您的建议。预先感谢。
答案 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));
}