[英]Change the zoom level for highmaps
我一直在嘗試減少按放大/縮小按鈕時地圖放大/縮小的數量。 似乎沒有任何變量,它需要使用http://api.highcharts.com/highmaps#Chart.mapZoom的自定義函數
我想做的是使用自定義事件覆蓋縮放按鈕的默認事件,該事件使用mapZoom'howMuch'參數的自定義值。 這是我在操作中能夠找到mapZoom函數的唯一示例-http: //jsfiddle.net/z8X6B/1/ :
Highcharts.Chart.prototype.mapZoom = function (howMuch, centerXArg, centerYArg, mouseX, mouseY) {}
但是我還無法弄清楚如何使用自定義功能覆蓋現有的放大/縮小按鈕事件(我想避免創建自己的按鈕)。
好問題! 我在地圖的導航按鈕( http://api.highcharts.com/highmaps#mapNavigation.buttons )上瀏覽了Highmaps API參考,並弄清楚了如何做到這一點:
mapNavigation: {
buttons: {
zoomIn: {
// the lower the value, the greater the zoom in
onclick: function () { this.mapZoom(0.1); }
},
zoomOut: {
// the higher the value, the greater the zoom out
onclick: function () { this.mapZoom(10); }
}
}
},
這是一個基於Highmaps演示之一的活躍小提琴: http : //jsfiddle.net/brightmatrix/d51g1jt2/
根據我的測試,似乎放大時mapZoom()
值需要是縮放后仍要看到的地圖的百分比(在此示例中,我們只希望看到地圖總數的10%)。 任何值1
或更高似乎並沒有工作。
對於縮小, mapZoom()
的值似乎是一個乘數。 因此,在這種情況下,我們放大了地圖值的10%,因此您的縮小是該值的10倍。
放大和縮小的默認值分別為0.5
和2
,這是有道理的(放大到地圖大小的50%;縮小2倍)。
希望這些信息對您有所幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.