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

Seaborn:修改countplot图表的X轴标签顺序

调整Seaborn Countplot的X轴标签顺序

我运行了以下代码:

sns.countplot(x=df["EDAD"]
              , hue=df["SEXO"])

生成的图表X轴标签未按预期顺序排列,希望X轴标签按照以下顺序展示:

  • 18-30岁
  • 31-45岁
  • 46-65岁
  • 66岁及以上

解决方案

方法1:将列转为有序分类(永久固定数据集顺序)

把EDAD列设置为有序分类类型,让Seaborn严格遵循指定顺序渲染图表:

import pandas as pd
import seaborn as sns

# 定义目标顺序
edad_order = ["18-30岁", "31-45岁", "46-65岁", "66岁及以上"]
# 转换为有序分类
df["EDAD"] = pd.Categorical(df["EDAD"], categories=edad_order, ordered=True)

# 重新绘制图表
sns.countplot(x=df["EDAD"], hue=df["SEXO"])

方法2:调用countplot时指定order参数(临时调整)

无需修改原数据集,直接在绘图时指定X轴标签顺序,适合临时需求:

edad_order = ["18-30岁", "31-45岁", "46-65岁", "66岁及以上"]
sns.countplot(x=df["EDAD"], hue=df["SEXO"], order=edad_order)

如果原始标签是西班牙文(18-30 años等),只需将edad_order内的内容替换为对应的西班牙文即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 02:27:06