使用 Mapbox Static API 绘制具有多边形几何形状的圆

问题描述 投票:0回答:0

我有类似圆形的 Geojson 多边形,我试图在静态 mapbox 地图中显示这些多边形。为此,我使用 Datasets API 首先创建一个空白数据库,然后向 mapbox 路由发出一个放置请求,向数据库添加一个特性。完成以下代码中的步骤后,我登录到我的 mapbox studio 仪表板,可以看到该功能在那里并且准确无误。

mapbox 文档然后说使用 Uploads API 将其转换为 tileset,但在查看之后,仅在地图上绘制一个圆圈似乎非常繁琐和复杂,因为它需要临时 AWS s3 存储桶凭证。

Mapbox 有一个名为 Mapbox Tiling Service (MTS) API 的 beta 服务,它是上传 API 的推荐替代方案,而且看起来不那么麻烦。看来我需要将 Geojson 数据从数据集 api 上传到 MTS,然后使用 mapbox 静态 API 进行传送,但我不知道该怎么做?

我觉得使用 3 个单独的 api 在地图上画圆太复杂了。任何关于如何有效实现这一目标的指示都会受到欢迎,因为我已经坚持了太久。

我知道我可以向静态 API 请求添加叠加层,但多边形可能太大而导致请求失败。

url = f"https://api.mapbox.com/datasets/v1/USERNAME/?access_token={os.getenv('MAPBOX_SECRET_KEY')}"
response = requests.post(url)
response.raise_for_status()
print(response.text)
resp = response.json()
dataset_id = resp['id']
data = MYGEOJSON
url2 = f"https://api.mapbox.com/datasets/v1/USERNAME/{dataset_id}/features/abc?access_token={os.getenv('MAPBOX_SECRET_KEY')}"
response = requests.put(url2, data=json.dumps(data), headers=headers)
response.raise_for_status()```
python maps mapbox geojson
© www.soinside.com 2019 - 2024. All rights reserved.