Highmaps 限制缩放范围打破缩小

Highmaps limit zoom range breaks zooming out

我正在使用 Highmaps,我通过在 xAxis 属性.

中设置 minRange 属性 来限制缩放范围

这按预期限制了放大倍数,但是当放大太多时,它不会让您再次缩小,直到您拖动地图。更准确地说,它可以让你缩小直到 x 轴完全可见,但如果你的视口太宽而无法在这个特定的缩放步骤中显示地图的整个 y 范围,你只会得到一个水平条纹。

$.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,没有别的。

最近的 Highmaps 更新(2015 年 2 月)解决了这个问题和许多其他问题。