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

px.scatter标记大小调整问题:仅显示首都城市标记的排查求助

问题分析与解决方案

嘿,我来帮你排查问题!

你当前代码的核心问题是初始设置的size='capital'直接隐藏了非首都城市的标记:当你把size参数绑定到capital字段时,非首都城市的capital值为0,这意味着它们的标记初始尺寸被设为0——尺寸为0的标记根本不会被渲染出来,哪怕后面用update_traces修改尺寸也没用,因为它们从一开始就没被画到图上。

修正后的代码方案

这里有两种简单的修正方式,你可以任选其一:

方案1:移除初始size参数,分别设置两类标记尺寸

fig = px.scatter(dados, x='longitude', y='latitude', title='Mapa', color='uf')
# 设置非首都城市的标记尺寸
fig.update_traces(marker={'size': 10}, selector={'capital': '0'})
# 设置首都城市的标记尺寸(比非首都大)
fig.update_traces(marker={'size': 20}, selector={'capital': '1'})
fig.show()

方案2:先给所有标记设置基础尺寸,再覆盖首都的尺寸

# 先给所有标记设置一个基础尺寸(比如10)
fig = px.scatter(dados, x='longitude', y='latitude', title='Mapa', color='uf', size=[10]*len(dados))
# 单独把首都的标记尺寸改大
fig.update_traces(marker={'size': 20}, selector={'capital': '1'})
fig.show()

额外注意点

还要检查你dados数据里capital字段的类型:

  • 如果capital是整数类型(0和1),那selector里应该写selector={'capital': 0}而不是'0';
  • 如果是字符串类型("0"和"1"),那当前的写法没问题。

内容的提问来源于stack exchange,提问作者Beatrice de Melo Silva

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.27 10:49:18