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

按类别拆分DataFrame多列绘制分组箱线图的实现方法

按类别拆分特征的分组箱线图实现方案

要实现每个特征对应类别0和1的分组箱线图,核心是在数据融合阶段保留类别标签,再通过Seaborn的分组参数实现拆分。具体修改步骤如下:

关键修改点

  • 数据融合时保留类别列:使用pd.melt时指定id_vars='labels',确保每个特征值都关联对应的类别标签,这是实现分组的核心前提。
  • 添加分组参数:在sns.boxplot中新增hue='labels',让Seaborn根据类别标签对每个特征的箱线图进行拆分绘制。

修改后的完整代码

import seaborn as sns
import pandas as pd
import matplotlib.pyplot as plt

# 融合数据时保留labels列,建立特征值与类别的关联
melted_df = pd.melt(df_here, id_vars='labels', var_name='variable', value_name='value')

# 设置适配分组箱线图的画布尺寸
sns.set(rc={'figure.figsize':(14, 8)})

# 绘制分组箱线图,hue参数按labels区分类别
sns.boxplot(x="variable", y="value", hue="labels", data=melted_df, palette='Set2')

# 可选:优化图表标注
plt.title('各类别特征值分布箱线图')
plt.xlabel('特征名称')
plt.ylabel('归一化特征值')
plt.legend(title='类别标签')

plt.show()

效果说明

修改后每个特征(Feature A/B/C)都会对应两个箱线图,分别展示类别0和类别1的特征值分布,总共6个箱线图整合在同一画布中,完全匹配需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 08:28:26