2016-06-09 173 views
-2

我想看看在一個星期我的用戶效應「一天的時間」超過一週的基礎得到一天的如何統一時間的快速可視取繪製多行按組柱狀圖趨勢是。因此,作爲第一開始我用這個:如何從大熊貓日期幀

df[df['week'] < 10][['realLocalTime', 'week']].hist(by = 'week', bins = 24, figsize = (15, 15)) 

出示下列:

image

這是一個很好的啓動容易,但我真的想就是代表直方圖作爲一個線圖,並覆蓋所有的線,一個用於在相同的情節的每個week。有沒有辦法做到這一點?

我有ggplot,在這裏,我只想通過增加顏色,並通過因子水平依賴做到這一點更多的經驗。是否有一個類似這樣的易於使用的方式和pandasmatplotlib做到這一點?

這裏是我的數據是這樣的:

realLocalTime week 
1 12 10 
2 12 10 
3 12 10 
4 12 10 
5 13 5 
6 17 5 
7 17 5 
8 6 6 
9 17 5 
10 20 6 
11 18 5 
12 18 5 
13 19 6 
14 21 6 
15 21 6 
16 14 6 
17 6 6 
18 0 6 
19 21 5 
20 17 6 
21 23 6 
22 22 6 
23 22 6 
24 17 6 
25 22 5 
26 13 6 
27 23 6 
28 22 5 
29 21 6 
30 17 6 
...  ...  ... 
70 14 5 
71 9 5 
72 19 6 
73 19 6 
74 21 6 
75 20 5 
76 20 5 
77 21 5 
78 15 6 
79 22 6 
80 23 6 
81 15 6 
82 12 6 
83 7 6 
84 9 6 
85 8 6 
86 22 6 
87 22 6 
88 22 6 
89 8 5 
90 8 5 
91 8 5 
92 9 5 
93 7 5 
94 22 5 
95 8 6 
96 10 6 
97 0 6 
98 22 5 
99 14 6 

回答

0

也許你可以簡單地使用crosstab按周來計算元素的數量和繪製。

# Test data 
d = {'realLocalTime': ['12','14','14','12','13','17','14', '17'], 
'week': ['10','10','10','10','5','5','6', '6']} 
df = DataFrame(d) 

ax = pd.crosstab(df['realLocalTime'], df['week']).plot() 

enter image description here

0

使用GROUPBY和value_counts

df.groupby('week').realLocalTime.value_counts().unstack(0).fillna(0).plot() 

enter image description here