You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python中提取HERE地图Linkid经纬度并绘制到地图?

从HERE Map LinkID提取经纬度并在Python中绘制地图

要实现从HERE的linkid提取经纬度并绘制地图,你可以按照以下步骤操作:

1. 通过HERE Map Data API获取Link的地理数据

你需要使用HERE的Map Data API来查询每个linkid对应的地理形状(包含经纬度点序列)。确保你已拥有有效的HERE API密钥,且该密钥具备Map Data API的访问权限。

import requests

# 替换为你的HERE API密钥
API_KEY = "your_here_api_key"
# 你从Route Matching API获取的linkid列表
target_link_ids = ["L12345", "L67890", "L01234"]

# Map Data API 请求端点
api_endpoint = "https://data.api.here.com/v3/links"

# 构造请求参数,指定获取shape属性(包含经纬度信息)
request_params = {
    "apiKey": API_KEY,
    "ids": ",".join(target_link_ids),
    "attributes": "shape"
}

# 发送GET请求并处理响应
response = requests.get(api_endpoint, params=request_params)
response.raise_for_status()  # 抛出请求错误(如权限不足、linkid无效等)
link_response_data = response.json()

2. 解码Link的Shape数据

HERE返回的shape字段是经过Polyline编码的字符串,需要解码为可读的经纬度坐标对。可以使用polyline库来完成解码,先通过pip install polyline安装该库。

import polyline

# 存储所有link的经纬度坐标列表
link_coordinates = []

for link_item in link_response_data["links"]:
    # HERE的Polyline编码使用5位精度,需指定对应参数
    decoded_coords = polyline.decode(link_item["shape"], precision=5)
    link_coordinates.append(decoded_coords)

3. 使用Folium绘制地图

借助folium库可以轻松在Python中生成交互式地图,先通过pip install folium安装。

import folium

# 以第一个link的起点坐标作为地图中心(如果有link数据的话)
map_center = link_coordinates[0][0] if link_coordinates else (0, 0)
# 创建地图实例,设置初始缩放级别
map_obj = folium.Map(location=map_center, zoom_start=14)

# 遍历每个link的坐标,绘制折线
for idx, coords in enumerate(link_coordinates):
    folium.PolyLine(
        locations=coords,
        color="#1a73e8",
        weight=6,
        opacity=0.8,
        popup=f"Link ID: {target_link_ids[idx]}"
    ).add_to(map_obj)

# 将地图保存为HTML文件,可直接在浏览器中打开查看
map_obj.save("here_route_links_map.html")

关键注意事项

  • 确认你的HERE API密钥已启用Map Data API服务,否则会返回权限错误
  • 如果需要处理大量linkid,建议分批发送请求,避免触发API调用频率限制
  • 解码Polyline时必须指定precision=5,否则会得到错误的经纬度坐标

内容的提问来源于stack exchange,提问作者Mangesh Shinde

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 16:13:19