我有一个由datetime列索引的数据框,我得到各种时间范围的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行。
答案 0 :(得分:3)
由于plot()
为每列绘制一条线,请先尝试转置帧。
pd.concat([rng0,rng1,rng2,rng3,rng4,rng5],axis=1).T.plot()