我here来自shapes file
。我希望将其添加到地图上,类似于在网页上执行的操作。我不太清楚如何处理它。我想在Web上使用它,因此使用JavaScript。
有人建议我在地图上使用shapes file
作为Layer
。但是如何去做呢?有Mapbox
,Leaflet
或OSM
的任何使用者请指导。
答案 0 :(得分:1)
为了加载SHP文件并将其显示在Leaflet / Mapbox.js地图上,您可以使用多个Leaflet plugins来简化任务。
例如leaflet.shapefile(online demo,您可以删除压缩的SHP和DBF文件。)
您提到的数据源也提供了KML格式,可能更容易使用。
对于KML,您可以使用例如leaflet-omnivore:
Leaflet&的通用格式解析器Mapbox.js
var map = L.mapbox.map('map', 'mapbox.streets')
.setView([38, -102.0], 5);
omnivore.kml('a.kml').addTo(map);
Leaflet和leaflet-omnivore的实例:https://plnkr.co/edit/KVXqBScBuIrAahg4VsGi?p=preview
答案 1 :(得分:0)
我终于可以将shapes file
作为tileset上传到Mapbox Studio来添加map Id
。
它为我提供了source-layer
和map.addLayer({
id: '<id>',
type: 'fill',
source: {
type: 'vector',
url: 'mapbox://<map-id>' // Mapbox tileset Map ID
},
'source-layer': '<layer-name>', // name of tilesets
'paint': {
'fill-color': '#088',
'fill-opacity': 0.8,
'fill-outline-color': '#000'
}
});
名称,我可以将其添加为我的Mapbox地图上的图层,如下所示:
<item name="android:statusBarColor" tools:targetApi="lollipop">@color/your_theme_color</item>