我想看看一天中的时间'一周一周对我的用户产生的影响,以便快速直观地了解时间趋势的一致性。因此,作为第一次开始,我使用了这个:
df[df['week'] < 10][['realLocalTime', 'week']].hist(by = 'week', bins = 24, figsize = (15, 15))
产生以下内容:
这是一个很好的简单开始,但我真正想要的是将直方图表示为线图,并覆盖所有线,每个week
在同一个图上。有没有办法做到这一点?
我对ggplot有更多的经验,我只是通过添加因子级别依赖颜色来实现这一点。使用pandas
和/ matplotlib
吗?
这是我的数据:
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 :(得分: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()
答案 1 :(得分:0)