Javascript Highcharts:带有绘图线的系列。一次只显示一个系列

Javascript Highcharts:带有绘图线的系列。一次只显示一个系列,javascript,highcharts,toggle,hide,show,Javascript,Highcharts,Toggle,Hide,Show,我在柱状图中为每个系列绘制了一条绘图线。当前,该系列仅在图表可见时显示,但我想添加一项功能,即单击图例项目显示该项目及其绘图线,但隐藏所有其他系列/绘图线。下面是对当前代码的修改: 小提琴可以在这里找到: 我希望单击图例中的“系列2”,将其与关联的绘图线一起显示,并隐藏系列1及其关联的绘图线。因此,只能显示一个系列/绘图线组合。在LegendItem中单击回调函数可以隐藏所有其他系列和绘图线: plotOptions: { series: { events: {

我在柱状图中为每个系列绘制了一条绘图线。当前,该系列仅在图表可见时显示,但我想添加一项功能,即单击图例项目显示该项目及其绘图线,但隐藏所有其他系列/绘图线。下面是对当前代码的修改:

小提琴可以在这里找到:


我希望单击图例中的“系列2”,将其与关联的绘图线一起显示,并隐藏系列1及其关联的绘图线。因此,只能显示一个系列/绘图线组合。

LegendItem中单击
回调函数可以隐藏所有其他系列和绘图线:

plotOptions: {
    series: {
        events: {
            legendItemClick: function() {
                this.chart.series.forEach(function(s) {
                    if (s !== this && s.visible) {
                        s.hide();
                    }
                });

                return !this.visible ? true : false
            }
        }
    }
}
现场演示:


API参考:

您需要使用图例项回调。看这个:对我有用。谢谢@ppotaczek
plotOptions: {
    series: {
        events: {
            legendItemClick: function() {
                this.chart.series.forEach(function(s) {
                    if (s !== this && s.visible) {
                        s.hide();
                    }
                });

                return !this.visible ? true : false
            }
        }
    }
}