如何繪制 a 線pandas.core.series.Series?示例:Id Week01 36 155 37 145 38 20702 36 116 37 98 38 9903 36 61 37 2904 36 162 37 190 38 19005 36 26 37 35 38 2006 36 57 37 40 38 15Name: num, dtype: int64那么所有 id 都有一行,Week 是 X,num 是 Y?我努力了:week.plot(x='Week', y='num')plt.show()但它只繪制了一條線,并(01, 36) (02, 38) (04, 38) (06, 37)在底部繪制了 X。為了制作這個(gè)系列,我使用了以下內(nèi)容:week = df.groupby(['Id', 'Week']).num.count()下面的代碼可以實(shí)現(xiàn)完全相同的功能:import pandas as pdimport matplotlib.pyplot as pltimport randomi = [1, 2, 3, 4, 5, 6]w = [36, 37, 38]n = 1iD = []wEek = []nUm = []for o in range(250): iD.append(random.choice(i)) wEek.append(random.choice(w)) nUm.append(n)df = pd.DataFrame({'Id': iD, 'Week': wEek, 'num': nUm})week = df.groupby(['Id', 'Week']).num.count()week.plot()plt.show()情節(jié)如下: 情節(jié)我希望所有s 都有一個(gè)單獨(dú)的行,其中每個(gè) (X) 都有 (Y)Id的值。num.count()Week
1 回答

慕姐4208626
TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超7個(gè)贊
如果您實(shí)際上希望每個(gè) id 在同一個(gè)圖中繪制 4 個(gè)不同的線圖,其中 x 軸為周,y 軸為數(shù)值:
week.unstack(0).plot()
如果您希望每一行位于不同的子圖中,只需添加 subplots=True arg,如下所示:
week.unstack(0).plot(subplots=True)
在這里,unstack(0) 函數(shù)以給定級(jí)別 0 為最左邊的索引 (Id) 來(lái)旋轉(zhuǎn)我們的多索引系列。
添加回答
舉報(bào)
0/150
提交
取消