【问题标题】:Google Fusion Table, Cannot seem to convert markers into polygonsGoogle Fusion Table,似乎无法将标记转换为多边形
【发布时间】:2013-06-05 18:56:42
【问题描述】:

现在,下面的代码给了我红色标记,我想在其中应用带有多边形的 Fusion Table 样式。下面的链接是我想要的最优解。
https://developers.google.com/maps/documentation/javascript/examples/layer-fusiontables-styling

在 geocodezip 的帮助下,我得到了一个很好的选择,即查询数字的标记颜色 (CNASD)。但是现在,所有标记现在默认为绿色,代码如下。我确定 CNASD 是表格的一部分,但我不知道为什么它不可用。

    <script type="text/javascript">

var map, layer;

function initialize() {

  var usa = new google.maps.LatLng(40.4230, -98.7372);

  map = new google.maps.Map(document.getElementById('map-canvas'), {
    center: usa,
    zoom: 4,
    mapTypeId: google.maps.MapTypeId.ROADMAP
  });

  layer = new google.maps.FusionTablesLayer({
    query: {
        select: '"FULL ADDRESS',
      from: '1wwaFO4DnqwX_8YQQwn2U2v6ZQ1ygcololTkFUr4'
    },
    styles: [{
        markerOptions: {
       iconName: 'small_red'
      }
    }, {
      where: 'CNASD == 6',
        markerOptions: {
        iconName: 'small_green'
      }
    }]
  });
  layer.setMap(map);
}

google.maps.event.addDomListener(window, 'load', initialize);

【问题讨论】:

  • believe the problem is that the Fusion Tables SQL API is no longer available, so I can't use these queries anymore. 这不是真的。
  • 嗯。那么我对潜在客户不知所措。我想这要么是我的代码有问题,要么是我试图将太多数据放入多边形中。
  • 我在您的表格中看不到任何多边形。只有地址,这将导致标记。上面的代码都不匹配您的表格(我没有看到名称为“Reg”或“Days”的列。如果您想设置标记的样式,请使用markerOptions

标签: javascript google-maps-api-3 google-fusion-tables


【解决方案1】:

您的查询对您的表无效。您的表格不包含任何多边形。要设置标记的样式,请使用 markerOptions:

function initialize() {

  var usa = new google.maps.LatLng(40.4230, -98.7372);

  map = new google.maps.Map(document.getElementById('map-canvas'), {
    center: usa,
    zoom: 4,
    mapTypeId: google.maps.MapTypeId.ROADMAP
  });

  layer = new google.maps.FusionTablesLayer({
    query: {
        select: '"FULL ADDRESS',
      from: '1wwaFO4DnqwX_8YQQwn2U2v6ZQ1ygcololTkFUr4'
    },
    styles: [{
      markerOptions: {
        iconName: 'small_blue'
      }
    }]
  });
  layer.setMap(map);
}

example with "blue" markers

您的所有行似乎都包含邮政编码。如果你真的想要多边形,你可以与包含 ZCTA 多边形的表合并,如下所示:

https://www.google.com/fusiontables/data?docid=1fzwSGnxD0xzJaiYXYX66zuYvG0c5wcEUi5ZI0Q#

【讨论】:

  • 现在标记是蓝色的,但我想要多边形。我该怎么做呢?我在图标集中没有看到。不过,谢谢您的解决方案;这当然是我可以使用的替代方案。
  • 你想要什么多边形?您需要使用包含它们的表。您可能需要将包含多边形的表格与您的地点列表合并。有关如何执行此操作的信息,请参阅文档。
  • 使用您的解决方案,我尝试查询以下内容,但似乎每个标记都希望默认为绿色。 ' 样式: [{ markerOptions: { iconName: 'small_red' } }, { where: 'CNASD == 6', markerOptions: { iconName: 'small_green' } }] });'对不起格式。试图弄清楚这个“代码”。
  • 用代码更新问题可能比将它放在 cmets 中更好。我在您的表格中没有看到名为“CNASD”的列。
  • 好的。我今天要回家了,但感谢您的帮助。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-12
  • 1970-01-01
  • 2017-01-05
  • 1970-01-01
  • 1970-01-01
  • 2019-07-23
相关资源
最近更新 更多