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

如何将geopandas explore()生成的交互式地图保存为PNG/JPEG?

解决Geopandas交互式地图保存为PNG/JPEG的问题

Geopandas的交互式地图(比如基于Folium或Plotly生成的)本质是Web端交互可视化,原生的save()方法仅支持保存为HTML,无法直接导出为PNG/JPEG。下面分两种主流场景给出可行方案:

场景1:基于Folium的交互式地图

步骤1:先将地图保存为HTML文件

先用Folium自带的save()方法把地图导出为HTML:

import folium
import geopandas as gpd

# 示例:加载数据并生成Folium地图
gdf = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres'))
m = folium.Map(location=[0, 0], zoom_start=2)
folium.GeoJson(gdf).add_to(m)

# 保存为HTML
m.save('interactive_map.html')

步骤2:将HTML转为PNG

可以用selenium或imgkit工具实现截图转换:

方法A:使用Selenium

先安装Selenium和对应浏览器驱动(比如ChromeDriver):

pip install selenium

然后编写截图代码:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

# 配置Chrome无头模式
chrome_options = Options()
chrome_options.add_argument('--headless=new')
chrome_options.add_argument('--window-size=1920,1080')

# 加载HTML并截图
driver = webdriver.Chrome(options=chrome_options)
driver.get('file:///path/to/your/interactive_map.html')  # 替换为你的HTML文件绝对路径
driver.save_screenshot('map_output.png')
driver.quit()

方法B:使用imgkit

先安装imgkit和依赖的wkhtmltopdf:

pip install imgkit
# 安装wkhtmltopdf(Ubuntu用apt-get install wkhtmltopdf,Windows直接下载安装包)

转换代码:

import imgkit

imgkit.from_file('interactive_map.html', 'map_output.png')

场景2:基于Plotly的交互式地图

如果Geopandas用Plotly作为可视化后端,直接用Plotly的write_image方法即可导出PNG:

import geopandas as gpd
import plotly.express as px

# 生成Plotly交互式地图
gdf = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres'))
fig = px.choropleth(gdf, geojson=gdf.geometry, locations=gdf.index, color='pop_est')

# 直接保存为PNG
fig.write_image('map_output.png')

注:使用write_image需要安装kaleido库:pip install kaleido


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 07:07:11