import folium from folium.plugins import AntPath # 定义路线点(简化的坐标,仅用于示意) route_points = [ {"name": "曲靖", "lat": 25.510, "lon": 103.797}, {"name": "珠江源", "lat": 25.615, "lon": 103.642}, {"name": "娜姑镇", "lat": 25.739, "lon": 103.478}, {"name": "大井镇", "lat": 25.823, "lon": 103.267}, {"name": "通泉镇", "lat": 25.833, "lon": 103.034}, {"name": "草铺镇", "lat": 25.870, "lon": 102.765}, {"name": "昆明", "lat": 25.038, "lon": 102.718} ] # 创建地图对象,初始位置设为曲靖 m = folium.Map(location=[25.510, 103.797], zoom_start=8) # 添加路线点和标记 locations = [] for point in route_points: locations.append((point["lat"], point["lon"])) folium.Marker( location=(point["lat"], point["lon"]), popup=point["name"], tooltip=point["name"], icon=folium.Icon(color="green" if point["name"] not in ["昆明"] else "red") ).add_to(m) # 添加动态路线 AntPath(locations, color="blue", weight=4, delay=1000).add_to(m) # 保存为HTML并截图显示 m.save("/mnt/data/hiking_route_map.html") m
时间: 2025-05-27 16:21:58 浏览: 17
### 如何使用 Folium 和 AntPath 插件生成动态路线地图
要实现带有动态路线的地图并将其保存为 HTML 文件,可以借助 `folium` 库以及其扩展插件 `AntPath` 来完成。以下是具体方法:
#### 动态路线的实现原理
`AntPath` 是一种动画路径效果,能够模拟蚂蚁爬行的效果来展示轨迹[^2]。通过定义一系列坐标点作为路径,并调用 `AntPath` 方法即可在地图上呈现动态路线。
#### 实现代码示例
以下是一个完整的 Python 脚本,演示如何使用 `folium` 和 `AntPath` 创建动态路线地图并保存为 HTML 文件:
```python
import folium
from folium.plugins import AntPath
# 定义地图中心位置和初始缩放级别
m = folium.Map(location=[30.5928, 114.3055], zoom_start=12)
# 定义一条动态路线的坐标列表 (纬度, 经度)
route_coordinates = [
[30.5928, 114.3055],
[30.6000, 114.3100],
[30.6072, 114.3155],
[30.6144, 114.3210]
]
# 添加 AntPath 动画路径到地图
ant_path = AntPath(
locations=route_coordinates,
delay=1000, # 设置动画延迟时间(毫秒)
dash_array=[10, 20], # 控制虚线样式
weight=5, # 线条宽度
color='blue', # 线条颜色
paused=False # 是否暂停动画
).add_to(m)
# 将地图保存为 HTML 文件
m.save('dynamic_route_map.html')
```
#### 参数说明
- **locations**: 表示路径上的所有坐标点,需提供一个二维数组形式的经纬度集合。
- **delay**: 设定动画帧之间的间隔时间,默认单位为毫秒。
- **dash_array**: 配置线条的虚实模式,例如 `[10, 20]` 表示每段显示长度为 10px 的实线后跟随一段隐藏区域宽为 20px 的空白部分。
- **weight**: 指定路径线条粗细大小。
- **color**: 自定义路径的颜色属性。
- **paused**: 决定加载页面时是否默认处于播放状态还是暂停状态。
以上脚本运行成功之后会生成名为 `dynamic_route_map.html` 的文件,在任意支持 HTML 的浏览器打开该文件就能看到具有动态效果的车辆行驶轨迹[^2]。
#### 注意事项
为了确保最佳兼容性和性能表现,请确认已正确安装所需依赖项并通过命令行工具执行必要的更新操作:
```bash
pip install folium==0.12.0
pip install jinja2>=3.0,<3.1
```
阅读全文
相关推荐


















