Google Geochart可以放大到特定的加拿大省份

时间:2012-11-10 16:54:23

标签: javascript google-visualization

经过研究,我发现现在还不能只在GeoChart中显示一个特定的省份,但我问自己是否有可能放大到特定省份?我找不到任何有关它的信息。

这是我能得到的最接近的地方(显示加拿大及其所有省份):

    <html>
  <head>
    <script type='text/javascript' src='https://www.google.com/jsapi'></script>
    <script type='text/javascript'>
     google.load('visualization', '1', {'packages': ['geochart']});
     google.setOnLoadCallback(drawRegionsMap);

      function drawRegionsMap() {
        var data = google.visualization.arrayToDataTable([
          ['Country', 'Popularity'],
          ['Germany', 200],
          ['United States', 300],
          ['Brazil', 400],
          ['Canada', 500],
          ['France', 600],
          ['RU', 700]
        ]);

        var options = {'region':'CA','resolution':'provinces'};

        var chart = new google.visualization.GeoChart(document.getElementById('chart_div'));
        chart.draw(data, options);
    };
    </script>
  </head>
  <body>
    <div id="chart_div" style="width: 900px; height: 500px;"></div>
  </body>
</html>​

请注意,国家/地区列表不相关,我只是测试缩放。提前感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

不幸的是,使用API​​中的选项无法做到这一点。 我能做的是用CSS制作一些tweek,以达到类似的效果。

我在div周围创建了另一个div,它将显示地图,具有特定的大小和隐藏的溢出。然后我以大比例创建地图并使用css边距值将其放置在父div中,仅显示我想要的区域。

例如:

#canvas {
    width:250px;
    height:300px;
    overflow:hidden;
}
#visualization {
    top:-150px;
}

这是一个有效的例子:

http://jsfiddle.net/cmoreira/njB6m/

希望它有所帮助! 干杯