2017-02-22 66 views
0

我想添加多个具有不同颜色的GeoJSON图层后,从Mapbox生成静态图像。如何使用多个GeoJSON图层生成Mapbox静态图像?

像这样
map.addLayer({ "id": "route1", "type": "line", "source": { "type": "geojson", "data": { "type": "Feature", "properties": {}, "geometry": { "type": "LineString", "coordinates": [ [-122.48695850372314, 37.82931081282506], [-122.48700141906738, 37.83080223556934], [-122.48751640319824, 37.83168351665737], [-122.48803138732912, 37.832158048267786], [-122.48888969421387, 37.83297152392784], [-122.48987674713133, 37.83263257682617], [-122.49043464660643, 37.832937629287755], [-122.49125003814696, 37.832429207817725], [-122.49163627624512, 37.832564787218985], [-122.49223709106445, 37.83337825839438], [-122.49378204345702, 37.83368330777276] ] } } }, "layout": { "line-join": "round", "line-cap": "round" }, "paint": { "line-color": "#C03", "line-width": 8 } });

我从Mapbox网站的例子,修改它做的东西,看起来像我想要的。

这是代码 JSFiddle

我试图在Mapbox网站静态地图API的文档内搜索的链接,但我找不到我想要做的。

回答

0

我不认为你可以做你想做的事情。

Mapbox Static API在给定几个相机参数的情况下,将Mapbox托管的样式转换为平铺或非平铺栅格地图。您不能在客户端生成的样式上使用它。

因此,您需要先将样式保存到Mapbox,然后调用API。您可以使用Mapbox Styles API为:

  1. 生成风格的浏览器
  2. 保存它Mapbox。
  3. (...等待...)
  4. 调用静态API以获取其静态映射版本。
+0

Saleh Aly - 请参阅https://www.mapbox.com/blog/static-styles-with-overlays/。沿着@Steve Bennett的路线......您的GeoJSON数据需要上传到Mapbox,而不是本地到您的浏览器。 – RobLabs

相关问题