按类型绘制 Pandas 数据框
Plotting Pandas Dataframe by Type
这是我现在的情节。
np.random.seed(1234)
test = pd.DataFrame({'id':[1,1,2,2,3,3,4,4],
'score':np.random.uniform(0,1,8),
'type': [0,1,0,1,0,1,0,1]})
test
id score type
0 1 0.191519 0
1 1 0.622109 1
2 2 0.437728 0
3 2 0.785359 1
4 3 0.779976 0
5 3 0.272593 1
6 4 0.276464 0
7 4 0.801872 1
test.plot(x='id',y='score',kind='bar')
如何绘制它以便它按 'type' 列分组并为每种类型使用不同的颜色?例如 'type' 1,我希望条形彼此相邻,'type 1 为红色,'type 0' 为蓝色,这样比较容易。
假设您想对分组求和,这行得通吗?如果没有,您可能可以使用它来实现您的目标。如果没有,请 post table 您想要绘制的汇总结果。
test.groupby(['id', 'type']).sum().unstack().plot(kind='bar')
这是我现在的情节。
np.random.seed(1234)
test = pd.DataFrame({'id':[1,1,2,2,3,3,4,4],
'score':np.random.uniform(0,1,8),
'type': [0,1,0,1,0,1,0,1]})
test
id score type
0 1 0.191519 0
1 1 0.622109 1
2 2 0.437728 0
3 2 0.785359 1
4 3 0.779976 0
5 3 0.272593 1
6 4 0.276464 0
7 4 0.801872 1
test.plot(x='id',y='score',kind='bar')
如何绘制它以便它按 'type' 列分组并为每种类型使用不同的颜色?例如 'type' 1,我希望条形彼此相邻,'type 1 为红色,'type 0' 为蓝色,这样比较容易。
假设您想对分组求和,这行得通吗?如果没有,您可能可以使用它来实现您的目标。如果没有,请 post table 您想要绘制的汇总结果。
test.groupby(['id', 'type']).sum().unstack().plot(kind='bar')