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

如何参考Plotly美国州示例制作澳大利亚各州及领地等值区域图?

适配Plotly绘制澳大利亚各州/领地等值区域图的解决方案

我来帮你把美国州的Plotly choropleth代码改成适配澳大利亚区域的版本,核心就几个关键修改点,很容易搞定:

1. 替换locationmode参数

原来的代码里用的是针对美国的locationmode = 'USA-states',直接把它改成Plotly内置支持的澳大利亚区域模式:

locationmode = 'Australia States'

2. 确保州/领地代码正确

你的DataFrame里的locations对应的code列,必须用Plotly识别的澳大利亚标准代码,完整列表如下:

  • NSW(新南威尔士州)
  • VIC(维多利亚州)
  • QLD(昆士兰州)
  • WA(西澳大利亚州)
  • SA(南澳大利亚州)
  • TAS(塔斯马尼亚州)
  • ACT(澳大利亚首都领地)
  • NT(北领地)

3. 修改后的完整代码示例

这里给你一个适配后的完整代码片段,用模拟数据演示,你可以直接替换成自己的真实数据:

import plotly.graph_objects as go
import pandas as pd

# 模拟澳大利亚各州/领地数据
df = pd.DataFrame({
    'code': ['NSW', 'VIC', 'QLD', 'WA', 'SA', 'TAS', 'ACT', 'NT'],
    'value': [1200, 950, 800, 700, 500, 200, 150, 100],
    'text': ['新南威尔士州', '维多利亚州', '昆士兰州', '西澳大利亚州', '南澳大利亚州', '塔斯马尼亚州', '首都领地', '北领地']
})

scl = [[0.0, 'rgb(242,240,247)'],[0.2, 'rgb(218,218,235)'],[0.4, 'rgb(188,189,220)'],
       [0.6, 'rgb(158,154,200)'],[0.8, 'rgb(117,107,177)'],[1.0, 'rgb(84,39,143)']]

fig = go.Figure(data=go.Choropleth(
    colorscale = scl,
    autocolorscale = False,
    locations = df['code'],
    z = df['value'].astype(float),
    locationmode = 'Australia States',  # 关键修改点
    text = df['text'],
    marker = dict(line = dict(color = 'rgb(255,255,255)', width = 2)),
    colorbar = dict(title = '数值')
))

fig.update_layout(
    title_text = '澳大利亚各州/领地等值区域图',
    geo = dict(
        scope='australia',  # 限定地图范围为澳大利亚
        showlakes = True,
        lakecolor = 'rgb(255,255,255)'
    )
)

fig.show()

额外提示

  • 加上scope='australia'可以让地图自动聚焦到澳大利亚区域,不用手动调整视角
  • 如果你的数据里有缺失的州/领地,Plotly会自动留空显示,不影响整体渲染

这样改完之后,你的代码就能正确生成澳大利亚的热力地图啦!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 08:35:27