尝试为类别数据创建栏,但是如果类别增加,则无法使用。 提供我尝试过的示例数据和代码。
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)
答案 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