2012-11-10 61 views
1

經過研究,我發現目前還沒有可能在GeoChart中只顯示一個特定的省份,但我問自己是否有可能放大某個省份?我找不到任何有關它的信息。Google 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

不幸的是,使用API​​中的選項是不可能的。 我能做的,就是用CSS製作一些tweeks,以達到類似的效果。

我在div上創建了另一個div,它將顯示具有特定大小和隱藏溢出的地圖。然後我創建了大比例的地圖和CSS邊距值,我將它放在父div中,只顯示我想要的區域。

例如:

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

這裏是一個工作示例:

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

希望它能幫助! Cheers

+0

因此,如果我在數據庫中保存每個省的#visualization top/left/size,我的問題就解決了。那很棒!非常感謝! –