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

使用Plotly制作印尼Choropleth图:locationmode与geo_scope参数疑问

解决Plotly制作印尼Choropleth地图的locationmode与geo_scope参数问题

1. 关于locationmode的正确设置

locationmode需要和你df['Column']中存储的行政区划标识类型严格匹配,针对印尼场景,常见选项如下:

  • 若存储的是印尼省级ISO-3子代码(如ID-JK代表雅加达、ID-BT代表巴厘岛),保持locationmode='ISO-3'即可,注意代码格式必须是ID-XX的形式。
  • 若存储的是印尼省级行政区英文名称,将locationmode改为'INDONESIA_ADMIN_1',Plotly内置了印尼一级行政区的名称映射,可直接匹配。
  • 若仅需展示整个印尼国家的Choropleth地图,locations列填国家ISO-3代码IDN,locationmode='ISO-3'即可。

2. 聚焦印尼区域(替代默认的geo_scope='asia')

Plotly的geo_scope没有直接的印尼选项,仅用geo_scope='asia'会显示整个亚洲区域,印尼占比过小。你可以通过手动设置地理中心、缩放级别来聚焦印尼:

修改后的完整代码示例

fig8 = go.Figure(data=go.Choropleth(
    locations=df['Column'], # 确保此处标识与locationmode匹配
    z = df['Columnnext'],
    locationmode = 'INDONESIA_ADMIN_1', # 根据你的数据类型替换
    colorscale = 'Reds',
    colorbar_title = "指标名称",
))

fig8.update_layout(
    title_text = '印尼XX指标分布图',
    geo=dict(
        scope='asia',
        center=dict(lat=-2.5, lon=118.0), # 印尼地理中心坐标
        zoom=3.5, # 缩放级别可根据需求微调
        showcountries=True,
        countrycolor="gray",
        showsubunits=True,
        subunitcolor="white"
    )
)

fig8.show()

关键注意事项

  • 务必保证df['Column']中的值与locationmode的要求完全匹配,比如使用INDONESIA_ADMIN_1时,省名需用英文(如Jakarta),而非印尼语本地名称。
  • 若使用ISO-3省级代码,需确认代码的准确性,拼写错误会导致对应区域无法高亮显示。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 14:48:23