我有一个包含一些数据的 geojson 文件。我可以成功地在谷歌地图上加载这个文件。但实际上我想在谷歌地图上显示之前对其进行过滤,即仅从 geojson 定位谷歌地图上满足某些条件的点
testLayer = new google.maps.Data();
testLayer.loadGeoJson('geojson/file/path/test.geojson');
testLayer.setMap(map);
我有一个包含一些数据的 geojson 文件。我可以成功地在谷歌地图上加载这个文件。但实际上我想在谷歌地图上显示之前对其进行过滤,即仅从 geojson 定位谷歌地图上满足某些条件的点
testLayer = new google.maps.Data();
testLayer.loadGeoJson('geojson/file/path/test.geojson');
testLayer.setMap(map);
Google Maps Data API支持,以下示例演示如何清除两个多边形(单词o
中的字母Google
)
$(function () {
initMap();
});
function initMap() {
var map = new google.maps.Map(document.getElementById('div_map'), {
center: {
lat: -25.0323575,
lng: 115.2244976
},
zoom: 3,
mapTypeId: google.maps.MapTypeId.TERRAIN
});
var layer = new google.maps.Data();
layer.addListener('addfeature', processData);
layer.loadGeoJson('https://storage.googleapis.com/maps-devrel/google.json');
layer.setMap(map);
}
function processData(o) {
var f = o.feature;
var geometry = f.getGeometry();
if(o.feature.getProperty('letter') == "o"){
o.feature.setGeometry(null);
}
}
#div_map {
height: 240px;
}
<script src="https://maps.googleapis.com/maps/api/js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
<div id="div_map"></div>