我是 MapBox GL Js 的新手,我想通过 https 调用一个大的 GeoJSON 文件并将其显示到 map 上。
我认为调用 vector Tile 是最好的方法,我找到了一些教程,展示了如何将 GeoJSON 数据转换为 Vector Tile 但在服务器端或将其上传到 MapBox 样式,但我的 GeoJSON 文件经常更改。于是我找到了 this solution是一个名为 geojson-vt 的新 JavaScript 库,描述了如何以疯狂的速度将巨大的 GeoJSON 文件动态转换为矢量切片(客户端),这似乎是我正在寻找的东西,但是!!,我如何集成将它传递给 MapBox GL JS 以调用图层??
阻止如何使用 Mapbox GL JS 添加图层,结果如下:
var tileIndex = geojsonvt(MyGeoJSON);
var tile = tileIndex.getTile(z, x, y);
......或者我只是没有得到它!请有人帮助或可以为我的问题提出其他解决方案。
最佳答案
您无需担心 geojson-vt。 Mapbox-GL-JS 在内部做到了这一点。因此,您只需遵循加载 GeoJSON 层的标准文档即可。
如果您的 GeoJSON 真的很大,那么限制因素可能是网络传输,这意味着您确实需要提供服务器端矢量切片。
关于geojson - 如何向 MapBox 显示巨大的 GeoJSON 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61342207/