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

使用Choropleth绘制密歇根县地图时遇到的问题

密歇根县Choropleth地图显示空白无颜色填充问题

我刚接触Choropleth,用密歇根县的GeoJSON文件绘制地图,想展示各县支持John的人群百分比,但最终只得到一张侧边带图例的空白美国地图(地图区域无任何颜色填充,仅显示美国轮廓和右侧的支持率图例)。

我的数据集包含各县名称(NAME)和对应%John字段,GeoJSON文件为密歇根县的边界数据。

使用的代码:

fig = px.choropleth(statistical_data, 
                    locations = 'NAME', 
                    locationmode = 'ISO-3', 
                    geojson = michigan_counties, 
                    color = '%John',
                   featureidkey = 'properties.NAME')
fig.show()

预期效果是聚焦密歇根州各县,按支持John的百分比进行颜色编码的地图。


问题修复方法

你这问题核心是locationmode参数设置错误——ISO-3是国家代码的标准格式,而你用的是美国县的名称,完全不匹配,导致Plotly无法将你的数据和GeoJSON里的地理区域关联起来,所以地图显示空白。

修改代码时注意两点:

  • 移除locationmode = 'ISO-3'参数:使用自定义GeoJSON时,不需要指定这个区域模式,Plotly会通过featureidkey和locations字段自动匹配数据与地理边界。
  • 添加scope='usa'参数:让地图自动聚焦到美国区域,这样就能显示密歇根州的细节,而非整张空白的美国地图。

修改后的代码:

fig = px.choropleth(statistical_data, 
                    locations = 'NAME', 
                    geojson = michigan_counties, 
                    color = '%John',
                    featureidkey = 'properties.NAME',
                    scope='usa')
fig.show()

另外需要核对你的数据集里的NAME字段和GeoJSON中properties.NAME的县名完全一致(比如大小写、空格、缩写是否统一),如果名称存在差异,也会导致无法正确填充颜色。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 18:01:24