2013-12-16 210 views
4

我有一個數據框是由一個日期時間列索引,我得到value_count()各種時間範圍。例如,大熊貓 - 繪圖系列

data['leadsource_ch_disp_name'].ix[rng[0]].value_counts() 

返回

Unknown  223 
Sponsorship 889 
Reseller  145 
Referral  52 
dtype: int64 

這是一系列。我想用5個不同的時間範圍(rng[i],i = [0,..,4])做到這一點。那麼我剩下5個系列了。我想要做的是繪製這5個系列(在同一個圖上),這樣x軸是系列名稱,y軸是這些值。我希望它是一個4行的線圖(對於未知的,贊助商,經銷商和推薦人)。

我曾嘗試以下

rng0=data['leadsource_ch_disp_name'].ix[rng[0]].value_counts() 
rng1=data['leadsource_ch_disp_name'].ix[rng[1]].value_counts() 
rng2=data['leadsource_ch_disp_name'].ix[rng[2]].value_counts() 
rng3=data['leadsource_ch_disp_name'].ix[rng[3]].value_counts() 
rng4=data['leadsource_ch_disp_name'].ix[rng[4]].value_counts() 
rng5=data['leadsource_ch_disp_name'].ix[rng[5]].value_counts() 
pd.concat([rng0,rng1,rng2,rng3,rng4,rng5],axis=1).plot() 

然而,這並不能返回我想要的。這創建了一個情節,其中X軸是介紹人,經銷商,贊助人,未知人以及5個不同系列的5行。

回答

3

由於plot()繪製一條線對於每一列,首先嚐試轉置該幀..

pd.concat([rng0,rng1,rng2,rng3,rng4,rng5],axis=1).T.plot() 
+1

哇。我認爲這會比這更復雜:)謝謝! – user1893354