首页 > 解决方案 > Highcharts - 当我启用另一个系列时如何禁用一个系列?

问题描述

我有一张图表,里面有大约 5 个系列。但是同时启用其中两个是没有意义的。当我的页面加载时,根据后端代码启用一个并禁用一个 - 这很好。但显然用户可以通过点击图例来启用第二个系列。有人可以分享一些在启用系列 A 时禁用系列 B 的快速 JS 代码吗?谢谢!

标签: javascripthighcharts

解决方案


使用legendItemClick事件回调函数并切换相反系列的可见性。

    series: [..., {
        ...,
        events: {
            legendItemClick: function() {
                this.chart.series[4].setVisible();
            }
        }
    }, {
        ...,
        events: {
            legendItemClick: function() {
                this.chart.series[3].setVisible();
            }
        },
        visible: false
    }]

现场演示:http: //jsfiddle.net/BlackLabel/tpj26vqw/

API参考:

https://api.highcharts.com/highcharts/series.line.events.legendItemClick

https://api.highcharts.com/class-reference/Highcharts.Series#setVisible


推荐阅读