
[英]How to print/display/draw a MultiPolygon GeoJSON on a Leaflet map
[英]Read Multipolygon geoJson data and display on Leaflet map
我想在Leaflet地图上读取/显示geoJson数据。 我在geoJson文件中存储了10个多面体,并希望用不同的颜色上色。
在阅读Leaflet 网站上的文档时,我使用以下代码来读取多边形并为其着色:
//Adding multipolygons to map
L.geoJSON(dataName, {
style: function(feature) {
switch (feature.properties.id) {
case '100': return {color: "#ff0000"};
case '200': return {color: "#0ff000"};
...
case '1000': return {color: "#0000ff"};
}
}
}).addTo(map);
这是数据文件:
//Data file
var dataName = {"type": "FeatureCollection", "features":[
{ "type":"Feature","id":100,"properties":{"id":"100","count":0},"crs":{"type":"name","properties":{"name":"GEODATA"}},
"geometry":{"type":"MultiPolygon","coordinates":[MANY COORDINATES]
}},
{"type":"Feature","id":200,"properties":{"id":"200","count":0},"crs":{"type":"name","properties":{"name":"GEODATA"}},
"geometry":{"type":"MultiPolygon","coordinates":[MANY COORDINATES]
}},
...
{"type":"Feature","id":1000,"properties":{"id":"1000","count":0},"crs":{"type":"name","properties":{"name":"GEODATA"}},
"geometry":{"type":"MultiPolygon","coordinates":[MANY COORDINATES]
}]}
什么都没有显示。 我认为错误在于函数内部。 不太确定“功能”的作用。 有什么线索吗?
谢谢!
看来您应该使用dataName.features
吗?
L.geoJSON(dataName, {
应该:
L.geoJSON(dataName.features, {
这是我提出的另一个答案的代码片段:
geojson = L.geoJson(myGeoJson.features, { onEachFeature: onEachFeature, style: styleFeature, }).addTo(myLeafletMap);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.