在Google地图中突出显示整个国家/地区

时间:2011-12-29 17:04:49

标签: google-maps

我对Google地图有一般性问题。我想仅为德国使用谷歌地图,但当然也会显示邻国。德国的边界很少见。

是否有可能淡出其他未使用过的国家?

5 个答案:

答案 0 :(得分:50)

我能够使用公共World Country Boundaries.kml Fus​​ion Table执行此操作。

您需要将其作为Fusion Table Layer添加到地图中。


首先初始化缩小的地图,居中,以便我们可以看到大多数国家/地区:

var map = new google.maps.Map(document.getElementById('map-canvas'), {
  center: new google.maps.LatLng(30,0),
  zoom: 2,
  mapTypeId: google.maps.MapTypeId.ROADMAP
});

接下来添加FusionTablesLayer

var world_geometry = new google.maps.FusionTablesLayer({
  query: {
    select: 'geometry',
    from: '1N2LBk4JHwWpOY4d9fobIn27lfnZ5MDy-NoqqRpk'
  },
  map: map,
  suppressInfoWindows: true
});

看起来像这样:

all countries


关于:

  

是否有可能淡出其他未使用过的国家?

如果查看the Fusion Table,您会看到NameISO_2DIGIT列。我们可以通过将where条件传递给FusionTablesLayer来过滤这些条件,例如:

  query: {
    select: 'geometry',
    from: '1N2LBk4JHwWpOY4d9fobIn27lfnZ5MDy-NoqqRpk',
    where: "ISO_2DIGIT IN ('US', 'GB', 'DE')"
  },

给予:

filter countries with where

答案 1 :(得分:3)

老问题,但是:如果您不需要地图可拖动,Google的已弃用的Map Charts API看起来是更好的解决方案:

https://developers.google.com/chart/image/docs/gallery/new_map_charts

示例:https://chart.googleapis.com/chart?cht=map:fixed=-60,0,80,-35&chs=600x350&chld=CA-BC|CN|IT|GR|US-UT&chdl=Vancouver|Beijing|Torino|Athens|Salt+Lake+City&chco=B3BCC0|5781AE|FF0000|FFC726|885E80|518274&chtt=Last+Five+Olympic+Hosts&chm=f2010+Winter,000000,0,0,10|f2008+Summer,000000,0,1,10|f2008+Winter,000000,0,2,10,1,:-5:10|f2004+Summer,000000,0,3,10|f2004+Summer,000000,0,4,10

enter image description here

此API将继续有效,直到2015年4月:https://developers.google.com/chart/terms

  

重要提示:Google Chart Tools的图像图表部分已经存在   自2012年4月20日起正式弃用。它将继续有效   根据我们的弃用政策。

答案 2 :(得分:3)

对于将来到这里来的任何人,现在似乎可以通过Google Charts(上面不推荐使用的链接的最新实现)很好地解决此问题

https://developers.google.com/chart/interactive/docs/gallery/geochart

答案 3 :(得分:1)

如果您只想要一张德国地图,为什么不使用它:

http://jvectormap.com/maps/countries/germany/

德国已经上市

答案 4 :(得分:1)

目前(API版本3)似乎不可能增加单个国家的边界​​厚度。