2013-03-07 67 views
3

我有一個圖表,其中i允許放大/縮小。 每次用戶放大/縮小「重置縮放」都會出現。調用復位縮放手動

現在我已經添加了一個新的自定義按鈕,我需要證明X最新列數據。 我已經改變類別和數據,還需要重置變焦。

可以這樣做嗎?當用戶嘗試放大/縮小時,我仍然想保留「重置縮放」。 PS:我試圖做this.zoomOut(),但隨後的 「復位放大」 出現:(

問候 察南

+1

你能創造的jsfiddle?要重置縮放,您還可以使用'chart.x/yAxis [0] .setExtremes(null,null)' – 2013-03-08 11:13:19

+0

由於公司策略無法使用jsFiddle顯示。 但主要想法:我有master/detail圖表,當選擇 時,它會更新詳細圖表。 我還在詳細圖表上啓用了縮放功能。 現在我想在詳細圖表上添加一個自定義按鈕,將從主圖表中刪除plotBand,重置詳細圖表中的類別,並重置縮放 - 目前我有問題刪除「重置縮放」按鈕並重置zoom – 2013-03-10 09:31:15

+0

ps:chart.x/yAxis [0] .setExtremes(null,null)不起作用 – 2013-03-10 09:33:40

回答

6

調用

chart.xAxis[0].setExtremes(null,null); 

的帕維爾的建議不工作,順便說一句,如圖所示這裏:http://jsfiddle.net/tvHg6/

但是,雖然圖表縮小了,但是resetZoom按鈕仍然在四周,不知道如何隱藏它。調用chart.resetZoomButton.hide()隱藏它,但它是這麼做的perma nently。

+4

你可以像「chart.zoomOut()」一樣做。它也會隱藏Reset Zoom按鈕。看到這裏http://jsfiddle.net/tvHg6/18/ – Pratik 2014-09-15 07:21:39

3

至於建議here

chart.zoom() 

但請記住,調用chart.zoom()不會觸發chart.events.selection事件。如果你點擊「重置按鈕」手動或觸發編程$('.highcharts-button').click();

2

如果您想變焦復位上的外部按鈕,點擊即可做到這一點,如下所示:

$("#YourOwnZoomBtnID").click(function(){ 

    $('.highcharts-button').click(); 
}); 

如果你想隱藏highcharts的內置復位按鈕,那麼你可以如下做到這一點:

xAxis: { categories: xAxisCategories 
       ,events: { 
     afterSetExtremes: function() { 
     $('.highcharts-button').hide(); 
     } 
    }} 

的jsfiddle例子是在這裏:jsfiddle

感謝 格利揚

1

我只是叫按鈕的Click事件和它工作得很好。

給出:v_chart爲Highcharts圖表變量;

if (typeof v_chart.resetZoomButton !== 'undefined') { 
    v_chart.resetZoomButton.element.onclick(); 
} 
0
  1. 隱藏原始復位按鈕
chart: { 
      resetZoomButton: { 
        theme: { 
         display: 'none' 
        } 
       } 
      } 
  • 採取事件
  • buttons: { 
            resetButton: { 
             symbol: 'url(redo_icon.svg)', 
             _titleKey: "resetZoom", 
             y: 20, 
             x: -20, 
             onclick: function() { 
              this.xAxis[0].setExtremes(null,null); 
              this.yAxis[0].setExtremes(null,null) 
             } 
            } 
           } 
    
    的護理