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

如何用Plotly绘制含两列数据的合并直方图

合并两列分类数据的直方图绘制方案

先看你的数据结构:

import pandas as pd
df = pd.DataFrame({'_3321131460': ['col1', 'col1', 'col2'], '_3952604542': ['col1', 'col2', 'col2']})

要实现两列数据的直方图合并展示(X轴对应列名、图例为分类、Y轴为计数),可以用以下两种常用方法:

方法1:Matplotlib 分组柱状图

先把数据转成长格式并统计计数,再绘图:

import matplotlib.pyplot as plt

# 转换为长格式,便于分组统计
df_long = df.melt(var_name='数据列', value_name='类别')
count_df = df_long.groupby(['数据列', '类别']).size().unstack(fill_value=0)

# 绘制分组柱状图
count_df.plot(kind='bar', figsize=(8, 5))
plt.xlabel('数据列')
plt.ylabel('计数')
plt.title('两列分类数据计数对比')
plt.legend(title='类别')
plt.xticks(rotation=0)  # 保持X轴标签水平
plt.show()

方法2:Seaborn 计数图

Seaborn的countplot可以直接处理长格式数据,代码更简洁:

import seaborn as sns

plt.figure(figsize=(8, 5))
sns.countplot(data=df_long, x='数据列', hue='类别')
plt.xlabel('数据列')
plt.ylabel('计数')
plt.title('两列分类数据计数对比')
plt.show()

两种方法都能生成符合要求的图表:X轴显示两个数据列,不同颜色的柱子对应col1/col2类别,Y轴展示对应类别的出现次数。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 13:40:59