簡體   English   中英

在matplotlib(pandas)中標記groupby的兩個匯總列

[英]Label two summarize columns of groupby in matplotlib (pandas)

使用熊貓,我想按一列分組,而不要總結另外兩列。 我正在那樣做:

df.groupby('data')['Time \n[h]', 'Time \n[h].1'].sum().plot(kind='line')

我得到了不錯的情節,但是我如何標記每列。 例如,用“ Us”代替“ Time \\ n [h]”,用“ Them”代替“ Time \\ n [h] .1”

(對不起,標題奇怪,但我什至不知道如何稱呼它)

謝謝秀美

一種可能的解決方案是首先通過dict重命名列:

df1 = df.rename(columns={'Time \n[h]':'Us','Time \n[h].1':'Them'})
df1.groupby('data')['Us', 'Them'].sum().plot(kind='line')

或者,您可以設置legend文本:

ax = df.groupby('data')['Time \n[h]', 'Time \n[h].1'].sum().plot(kind='line')
ax.legend(['Us','Them'])

樣品:

df = pd.DataFrame({'data':[1,1,3],
                   'Time \n[h]':[4,5,6],
                   'Time \n[h].1':[7,8,9]})

print (df)
   Time \n[h]  Time \n[h].1  data
0           4             7     1
1           5             8     1
2           6             9     3

df1 = df.rename(columns={'Time \n[h]':'Us','Time \n[h].1':'Them'})
df1.groupby('data')['Us', 'Them'].sum().plot()

圖形

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM