Mapbox静态地图大型数据集

时间:2018-10-31 19:47:47

标签: php dataset mapbox

我尝试使用mapbox静态API返回基于座标显示特定路线的地图。

https://www.mapbox.com/api-documentation/?language=cURL#retrieve-a-static-map-from-a-style

这是可行的,但是,它受URL长度的限制,如何基于带有坐标的数据集生成静态地图?

1 个答案:

答案 0 :(得分:0)

如文档中所述:

使用较大的GeoJSON对象作为overlay参数的参数可能会导致达到8192字节的URL长度限制。缩短结果URL长度的可能选项包括:

  • 在将其作为参数传递之前,使用第三方库(例如simple-geojson)简化GeoJSON。
  • 将GeoJSON中坐标的精度限制为不超过五到六位小数,这将使您可以利用GeoJSON本身中的更多点。

但是您的文件轨迹(geojson,gpx等)可能太大,以至于上述所有选项都无法有效地将其减小到字符数限制之下。

因此,最后一个解决方案是以下解决方案。首先将文件上传为图块集(而不是像以前那样以数据集的形式),将其作为图层添加到自定义样式中,然后从中生成静态地图。

  • 如果GeoJSON由一个大型且详细的多边形组成,则可以在Mapbox Studio中创建一个包含该多边形的自定义样式,然后将生成的样式ID传递给Static Images API的style_id参数,而不必使用overlay参数。首先将GeoJSON作为图块集上传到Mapbox,然后将其作为自定义样式添加为图层。请参考本教程以获取指导。

来源:https://docs.mapbox.com/api/maps/#static-images

因此,首先,您需要学习如何在MapBox帐户上上传文件: https://docs.mapbox.com/help/how-mapbox-works/uploading-data/

我知道该帖子过时了,希望对其他开发人员有所帮助。 对不起我的英语不好, 托马斯