现在,下面的代码给了我红色标记,我想在其中应用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);
答案 0 :(得分:0)
您的查询对您的表无效。您的表格不包含任何多边形。要设置标记的样式,请使用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);
}
看起来您的所有行都包含邮政编码。如果你真的想要多边形,你可以合并一个包含ZCTA多边形的表,如下所示:
https://www.google.com/fusiontables/data?docid=1fzwSGnxD0xzJaiYXYX66zuYvG0c5wcEUi5ZI0Q#