8

我有 50 个不同的系列,所以默认情况下,我将它们隐藏起来,所以用户只需点击他想看的系列。

有时,一个人想要快速显示所有内容或隐藏所有内容。我不知道如何打开/关闭所有开关。这可能吗?我认为是这样,但无法找到一种方法来做到这一点。

4

2 回答 2

9

隐藏每个系列使用series.setVisible(false, false)参考。- 毕竟所有系列将被隐藏调用chart.redraw()重绘图表一次。

于 2013-09-16T08:54:38.470 回答
2

此解决方案基于http://jsfiddle.net/pGuEv/

  var chart = $('#chart-container').highcharts();
  var $hide_show_all_button = $('#hide_show_all_series_button');

  $hide_show_all_button.click(function() {
    var series = chart.series[0];
    if (series.visible) {
      $(chart.series).each(function(){
        this.setVisible(false, false);
      });
      chart.redraw();
      $hide_show_all_button.html('show all');
    } else {
      $(chart.series).each(function(){
        this.setVisible(true, false);
      });
      chart.redraw();
      $hide_show_all_button.html('hide all');
    }
  });
于 2014-04-05T01:14:18.543 回答