在Google的数据层地图上添加范围滑块以过滤数据

时间:2015-05-20 06:23:25

标签: javascript google-maps-api-3 geojson

是否可以创建滑块,收音机或复选框等输入功能,以便用户在使用map.data.loadgeojson()时过滤加载到Google数据层的geojson数据?

我的理解是,数据层上的负载或addGeoJson函数会创建一个单独的层。如何构建一个输入功能来改变数据在地图上的显示方式?

提前致谢,如果问题很明确,请告诉我。

1 个答案:

答案 0 :(得分:0)

是的,可以在一张地图上加载多个数据层。

文档中可能不清楚的部分是您在创建地图时默认包含一个数据层,如map.data。 e.g。

var myMap = new google.maps.Map(..);
myMap.data.loadGeoJson(...);

但是,您可以根据需要创建任意数量的数据层。

function styleFeature(feature) {
   // style the feature here
}

var layer1 = new google.maps.Data();
layer1.setMap(myMap);
layer1.setStyle(styleFeature);

重要的是,您需要设置地图,并在新图层对象上设置任何自定义设置(例如layer1),而不是map.data

在我给出的示例中,您也可以在一行中完成所有操作。

var layer1 = new google.maps.Data({ map: myMap, style: styleFeature });