我使用的是Highmaps,我通过在xAxis属性中设置minRange属性来限制缩放范围。
这会按预期限制放大因子,但放大太多时,在拖动地图之前不会再缩小。更准确地说,它可让您缩小直到x轴完全可见,但如果您的视口太宽而无法在此特定缩放步骤中显示地图的整个y范围,则只能获得水平条纹。 / p>
$.getJSON('http://www.highcharts.com/samples/data/jsonp.php?filename=world-population-density.json&callback=?', function (data) {
// Initiate the chart
$('#container').highcharts('Map', {
title : {
text : 'Zoom in on country by double click'
},
mapNavigation: {
enabled: true,
enableDoubleClickZoomTo: true
},
colorAxis: {
min: 1,
max: 1000,
type: 'logarithmic'
},
xAxis: {
minRange: 5000 // <- prevent zooming in too much
},
series : [{
data : data,
mapData: Highcharts.maps['custom/world'],
joinBy: ['iso-a2', 'code'],
name: 'Population density',
states: {
hover: {
color: '#BADA55'
}
},
tooltip: {
valueSuffix: '/km²'
}
}]
});
});
});
您可以在此处查看有效的演示:http://jsfiddle.net/b9d0ry3t/
这是一个标准的Highmaps演示,我只是在xAxis上添加了minRange,没有别的。
答案 0 :(得分:1)
最近的Highmaps更新(2015年2月)修复了此问题以及许多其他问题。