Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Highcharts-如何以编程方式切换图例项并确定选择了哪些项_Javascript_Jquery_Highcharts - Fatal编程技术网

Javascript Highcharts-如何以编程方式切换图例项并确定选择了哪些项

Javascript Highcharts-如何以编程方式切换图例项并确定选择了哪些项,javascript,jquery,highcharts,Javascript,Jquery,Highcharts,因此,我们的设计师提出了几个要求: 1允许用户通过单击图表容器外部的链接来选择/取消选择所有图例项。这意味着我需要以编程方式打开或关闭图表中的所有项目,无论当前是否选择了任何项目 2确定图表中选择或启用了哪些特定图例项,以便我们可以根据选择生成另一个图表 我看不到使用API来实现这两个目的的方法,所以我想知道是否有人已经为这两个目的中的任何一个提出了可能的解决方案 提前感谢您的指导。Highcharts允许我们从外部切换图例状态 系列[0]。隐藏;系列[0]。显示; 由highcharts提供,

因此,我们的设计师提出了几个要求:

1允许用户通过单击图表容器外部的链接来选择/取消选择所有图例项。这意味着我需要以编程方式打开或关闭图表中的所有项目,无论当前是否选择了任何项目

2确定图表中选择或启用了哪些特定图例项,以便我们可以根据选择生成另一个图表

我看不到使用API来实现这两个目的的方法,所以我想知道是否有人已经为这两个目的中的任何一个提出了可能的解决方案


提前感谢您的指导。

Highcharts允许我们从外部切换图例状态

系列[0]。隐藏;系列[0]。显示; 由highcharts提供,我们可以使用它来实现您要求的功能


这里有一个供您参考的小提琴

系列[i]。属性可见

如果您有很多系列,隐藏和显示可能会导致非常糟糕的性能。或者,您可以在每个系列上使用setVisible,并在末尾重新绘制

    $('#uncheckAll').click(function(){
        var chart = $('#container').highcharts();
        var series = chart.series;
        for(i=0; i < chart.series.length; i++) {
            series[i].setVisible(false, false);
        }
        chart.redraw();
    });

    $('#checkAll').click(function(){
        var chart = $('#container').highcharts();
        var series = chart.series;
        for(i=0; i < chart.series.length; i++) {
            series[i].setVisible(true, true);
        }
        chart.redraw();
    });
要确定是否选择了系列,可以使用series.visible属性