如何避免隐藏唯一的线条显示?

时间:2014-09-30 09:55:09

标签: javascript highcharts legend

启用highcharts图例时,它具有默认功能:如果单击图例中的线条,它将切换图表中线条的可见性。

http://api.highcharts.com/highcharts#legend

虽然这个功能很不错,但我从不希望用户隐藏图表中的所有行,因为这只是丑陋:

enter image description here

如何防止最后一行显示被隐藏?

1 个答案:

答案 0 :(得分:0)

只需将此方法添加到图表选项中:

 plotOptions: {

     series: {
         events: {
             legendItemClick: function() {
                 if (this.visible) {

                     // don't hide if it's the only line showing
                     var nShowing = 0;

                     for (var index = 0; index < this.chart.series.length; ++index) {
                         var s = this.chart.series[index];
                         if (s.visible) {
                             nShowing++;
                         }
                     }

                     return (nShowing > 1);
                 }

                 return true;
             }
         }
     }
 }