将 KML 图层添加到带点的地图

Adding KML Layer to Map with Points

我目前有一个 Fusion Table 地图,它通过脚本同步到 Google 表单。它仅适用于俄克拉荷马州的位置,因此我有兴趣添加一个图层来显示该州的边界。

我使用以下信息制作了 KML Fusion Table:https://www.google.com/fusiontables/embedviz?q=select+col2+from+1UUVOpuu7ymfkmuzyV9dO8PXwT2QoMFuRTCy8scvn&viz=MAP&h=false&lat=34.766328945783435&lng=-97.20538659179692&t=1&z=7&l=col2&y=2&tmplt=2&hml=KML

我想将它添加到我的地图中: https://www.google.com/fusiontables/embedviz?q=select+col3%3E%3E0+from+1EPhndJHBm0ghi06Xq9d8P62hUwCisAcQxYxgH5ax&viz=MAP&h=false&lat=36.393799473451324&lng=-94.17718371249998&t=1&z=6&l=col3%3E%3E0&y=2&tmplt=2&hml=ONE_COL_LAT_LNG

我做了一些研究,从 google 中找到了芝加哥地图的示例,并尝试将其适应我当前的地图

   kmllayer = new google.maps.FusionTablesLayer({
   query:{
      select: "geometry",
          from: "1UUVOpuu7ymfkmuzyV9dO8PXwT2QoMFuRTCy8scvn",
      });

所以我将其添加到我的 Fusion Table 地图中的 HTML,然后尝试将代码添加到我的网站。当我这样做时,我只会得到一个空白屏幕。此外,我尝试在没有上面的 KML 代码的情况下将代码添加到我的网站,但它仍然只是空白。我错过了一步吗?如有任何建议,我们将不胜感激。

您的代码中存在语法错误,必须是

   kmllayer = new google.maps.FusionTablesLayer({
   query:{
      select: "geometry",
          from: "1UUVOpuu7ymfkmuzyV9dO8PXwT2QoMFuRTCy8scvn",
      }});

两层的工作示例:

      function initialize() {
        var mapOptions = {
          center: new google.maps.LatLng(35, -97),
          zoom: 6
        };
        map = new google.maps.Map(document.getElementById("map-canvas"),
          mapOptions);
        new google.maps.FusionTablesLayer({
          query: {
            select: "geometry",
            from: "1UUVOpuu7ymfkmuzyV9dO8PXwT2QoMFuRTCy8scvn",
          },
          map: map,
          options: {
            styleId: 2
          }
        });
        new google.maps.FusionTablesLayer({
          query: {
            select: "geometry",
            from: "1EPhndJHBm0ghi06Xq9d8P62hUwCisAcQxYxgH5ax",
          },
          map: map,
          options: {
            styleId: 2,
            templateId: 2
          }
        });
      }
      google.maps.event.addDomListener(window, 'load', initialize);
      html,
      body,
      #map-canvas {
        height: 100%;
        margin: 0;
        padding: 0
      }
<script type="text/javascript" src="https://maps.googleapis.com/maps/api/js?v=3"></script>
<div id="map-canvas"></div>