10行Python代码,快速生成中国卫星地图并自动打开浏览器
在地理信息、遥感分析、物流规划、农业监测等领域,地图可视化是数据展示的重要环节。
很多开发者一提到GIS地图,就会想到复杂的软件安装、繁琐的配置流程。实际上,借助 Python 的开源生态,我们只需要几行代码,就能快速生成一张可交互的中国卫星地图,并自动在浏览器中打开查看。
效果图:
完整代码
import leafmapimport webbrowserimport os# 中心点:中国地理中心【纬度,经度】china_center = [35.8617, 104.1954]# 创建地图对象m = leafmap.Map( center=china_center, zoom=4)# 添加Esri全球卫星影像底图m.add_basemap("Esri.WorldImagery")# 保存为HTML文件html_name = "china_map.html"m.save(html_name)# 自动打开浏览器full_path = os.path.abspath(html_name)webbrowser.open("file://" + full_path)print(f"地图已生成,路径:{full_path}")
代码解析
1. 导入所需库
import leafmapimport webbrowserimport os
3. 创建地图对象
m = leafmap.Map(center=china_center, zoom=4)
常见缩放等级:
4. 添加卫星底图
m.add_basemap("Esri.WorldImagery")
这里使用的是:
Esri 提供的全球遥感影像服务。
特点:
效果类似:
但调用方式更加简单。
5. 保存为HTML网页
m.save("china_map.html")
优势:
6. 自动打开浏览器
webbrowser.open("file://" + full_path)
安装环境
pip install leafmap
进一步扩展
添加标记点
m.add_marker( location=[39.9042,116.4074], popup="北京")
添加多个城市
cities = [ [39.9042,116.4074], [31.2304,121.4737], [23.1291,113.2644]]for city in cities: m.add_marker(city)
加载GeoJSON数据
m.add_geojson("china.geojson")
加载遥感栅格数据
m.add_raster("landsat.tif")
总结
通过本文的示例,我们仅用十几行 Python 代码就完成了:
对于数据分析师、GIS工程师、遥感从业者以及Python开发者而言,leafmap 是一个非常值得掌握的地图可视化工具。