在Fusion Tables中使用带有自然地球数据集的Google地图

时间:2013-04-08 20:44:23

标签: wordpress google-maps wordpress-plugin geocoding google-fusion-tables

我正在尝试为wordpress创建一个插件,只需在帖子或页面创建中输入一组国家/地区名称(很像标签),并使用Google Maps APIv3生成一个地图,并突出显示所有国家/地区(使用多边形)来自自然地球数据集的数据),但我在寻找有关如何将这两种技术合并在一起的资源方面非常短暂。

我非常熟悉Google Maps API以及如何使用PHP和变量提供postpress对象在wordpress中操作它,但我似乎无法弄清楚如何将其与自然地球数据中提供的数据合并集。

我偶然发现了这些,但仍然无法弄明白。

Country boundries using Google Map API v3

Google Maps V3: Draw German State Polygons?

http://www.geocodezip.com/geoxml3_test/v3_FusionTables_query_sidebarF_local.html?country=Germany

最后一个链接非常接近我想要做的事情,除了多个国家,这只是以国家形式添加更多POI的问题。但我无法在我的网站上使用它。

有谁知道有关如何做到这一点的任何好教程?或者更好的是,有没有人已经做过这类事情并取得了成功?

这是我目前所拥有的:

<head>

<script type="text/javascript"src="https://maps.googleapis.com/maps/api/&sensor=false"></script>

        <script type="text/javascript">
          function initialize() {
        map = new google.maps.Map(document.getElementById('map-canvas'), {
          center: new google.maps.LatLng(27.246933444275317, 318.515625),
          zoom: 2,
          mapTypeId: google.maps.MapTypeId.ROADMAP
        });

        layer = new google.maps.FusionTablesLayer({
          map: map,
          heatmap: { enabled: false },
          query: {
            select: "col38",
            from: "19lLpgsKdJRHL2O4fNmJ406ri9JtpIIk8a-AchA",
            where: "col2 in (\x27CAN\x27, \x27MEX\x27, \x27USA\x27, \x27JPN\x27
    )"
          },
          options: {
            styleId: 9,
            templateId: 8
          }
        });
      }

      google.maps.event.addDomListener(window, 'load', initialize);
        </script>
<head>

<body>
      <div id="map-canvas" style="width: 100%; height: 400px;"></div>
</body>

谢谢,

1 个答案:

答案 0 :(得分:1)

我认为您需要“IN”运算符:

example

我建议使用“iso”列来减小查询字符串的大小。

your code works for me

注意:我确实修复了这个“未终止的字符串”:

        where: "col2 in (\x27CAN\x27, \x27MEX\x27, \x27USA\x27, \x27JPN\x27
)"

允许选择多个国家的示例:

http://www.geocodezip.com/v3_FusionTables_MultiCountryBrowser.html?countries=Afghanistan,Albania,Algeria,Brazil