我正在使用Leaflet地图展示一些GeoJSON数据。
我尝试在我的JS文件中添加聚类功能。由于我已根据属性添加了一些过滤和样式特性,因此我无法找到编写聚类函数的正确方法。
这是GeoJSON图层和过滤器验证器:
const geojsonLayer = L.geoJSON(null,{
filter: (feature) => {
const isYearChecked = checkboxStates.years.includes(feature.properties.year)
const isEventTypeChecked = checkboxStates.eventTypes.includes(feature.properties.eventType)
return isYearChecked && isEventTypeChecked }, //only true if both are true
使用样式功能:
var year = feature.properties.year;
if (year <= -150) {
return {
color: "black"
};
我接下来添加弹出框:
layer.bindPopup(popupText, {
closeButton: true,
offset: L.point(0, -10)
});
layer.on('click', function() {
layer.openPopup();
});
},
}).addTo(map);
我尝试添加这段代码以显示聚类,但不知道在我的代码中应该放在哪里才能生效(https://github.com/Leaflet/Leaflet.markercluster):
var markers = L.markerClusterGroup();
markers.addLayer(L.marker(getRandomLatLng(map)));
// ... Add more layers ...
map.addLayer(markers);
我的全部代码都可以在这里找到:https://github.com/jandre3/pince-crochet