2013-04-09 69 views
0

我在legendItemClick:function(event)中有以下代码。它将图例过滤转换为“单选按钮”样式格式,您一次只能查看一组数据。问题是,当你点击一个系列名称时,它不会让你回到可以看到所有点的视图。启用过滤器时在复选框中放置重置过滤器按钮

有没有办法在启用过滤器时在图例中的某处放置一个显示“重置过滤器”的按钮?

我注意到,当你使用鼠标放大时,会出现一个“重置缩放”按钮,这是我想要的,除了通过图例启用过滤器时。

       var seriesIndex = this.index; 
      var series = this.chart.series; 

      for (var i = 0; i < series.length; i++) 
      { 
       if (series[i].index != seriesIndex) 
       { 
        series[i].hide(); 
       } 
       else 
       { 
        series[i].show();  
       } 
      } 
      return false; 

我尝试这个代码,阅读此链接后,http://highslide.com/forum/viewtopic.php?f=9&t=15416

,但不能得到它的工作,也许,我把它错了吗?我把它放在最后的“scatter”大括号内,它直接在plotOptions大括号内。

chart.renderer.button('Reset zoom', null, null, chart.resetZoom, { 
    zIndex: 20 
}).attr({ 
    align: 'right', 
    title: 'Reset zoom level 1:1' 
}).add(chart.zoomGroupButton).align({ 
    align: 'right', 
    x: -10, 
    y: 10 
}, false, null); 

回答

0

你可以没有任何数据添加额外的系列name: "Reset filter",然后在legendItemClick检查,如果被点击系列(只比较名称)。所以点击时 - 显示所有系列。