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

如何调整Pandas柱状图:以mean、median为X轴,按Won/Lost分组配色?

调整柱状图布局与分组颜色的解决方案

我来帮你搞定这个可视化需求!你当前的代码生成的图表,X轴是Won/Lost,柱子对应mean和median——但你想要反过来:X轴显示mean和median,按Won/Lost分组用不同颜色区分。咱们可以通过两个简单步骤实现:

1. 转置聚合后的DataFrame

原代码里groupby.agg的结果,索引是result(也就是Won/Lost),列是统计量mean和median。我们需要用.T转置这个DataFrame,让统计量变成索引(对应X轴),Won/Lost变成列(对应分组)。

2. 自定义分组颜色

在plot方法里通过color参数指定每个分组的颜色,你可以根据喜好选择颜色代码或名称,让不同分组的柱子一目了然。

完整代码示例

import matplotlib.pyplot as plt

# 聚合数据并转置,调整结构以匹配需求
aggregated_data = df.groupby('result')['col_A'].agg(['mean', 'median']).T

# 绘制分组柱状图并指定颜色
aggregated_data.plot(
    kind='bar',
    color={'Won': '#27ae60', 'Lost': '#e74c3c'},  # 自定义Won为绿色,Lost为红色
    figsize=(8, 5)  # 可选:调整图表大小
)

# 可选:添加图表细节优化
plt.title('Mean & Median of col_A by Result')
plt.xlabel('Statistic Type')
plt.ylabel('col_A Value')
plt.legend(title='Match Result')
plt.xticks(rotation=0)  # 让X轴标签横向显示,更易读
plt.show()

效果说明

转置后的DataFrame结构完美契合你的需求:X轴会显示mean和median,每个X位置上有两个柱子,分别对应Won和Lost的统计值,并且用你指定的颜色区分开。如果不需要自定义颜色,Matplotlib会自动分配默认配色,但手动指定颜色能让图表的表意更清晰。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 07:32:58