分类图

时间:2019-08-23 06:56:01

标签: python dataframe plot

尝试为类别数据创建栏,但是如果类别增加,则无法使用。 提供我尝试过的示例数据和代码。

Name    Cat num
V   SS  1
V   SC  1
N   SC  1
Y   AD  14
Y   AC  1
I   SC  1
C   SC  1
B   SU  1
G   AC  8
G   AD  1
W   SC  2
Z   SC  1
D   SC  1
O   AD  4
O   RD  4
A   SC  1
P   AC  1
P   AS  1
P   AU  1
X   SU  2
J   DT  4
F   SC  1
M   SS  2
R   SS  1
S   AD  6
E   SC  1
H   SS  1
K   DT  2
L   AC  3
Q   SS  1
T   SS  1
U   AB  4

dt = df.groupby(['Cat','Name'],as_index=False)['num'].sum()

colors = plt.cm.Reds(np.linspace(0, 1, 26))[enter image description here][1]

dt.groupby(['Cat','Name'])['num'].sum().unstack().plot(kind='bar',color=colors)

1 个答案:

答案 0 :(得分:0)

一种与您尝试执行的效果很好的格式是seaborn的猫图。

如果我的解释正确,则此代码可能是您的凭单:

import seaborn as sns sns.catplot(data=df, x='Name', y='num', hue='Cat', estimator=sum, kind='bar')

“ hue ='Cat'”将为您要绘制的每个类别分配不同的颜色。

在此处详细了解功能和参数:seaborn.catplot