[英]Bubble Plot Pandas (or Python) Weekday/Hour of day
我正在尝试生成一个泡泡图,该图将频率绘制到工作日和一天中的小时,就像此图一样: https : //i.stack.imgur.com/TP4ZF.jpg数据位于的pandas数据框中格式如下:
weekday hour freq
0 0 22710
0 1 22685
0 2 21673
0 3 22276
0 4 21531
0 ... ...
0 23 12343
... ... ...
6 23 34231
我尝试了以下操作,但是根本没有用:
df.plot.scatter(x='hour', y='weekday', s=df['freq']);
生成的图形似乎具有正确的轴,但被一个大的蓝色矩形覆盖(请参阅https://i.stack.imgur.com/2BLzR.png )。 忽略size参数也不起作用(显示均匀填充的散点图。
您的尺寸参数太大了。 缩放它,也许像
norm = max(df['freq'])
df.plot.scatter(x='hour', y='weekday', s=df['freq'] / norm);
在发布了这个问题(以及引起了很多头痛的数小时研究)之后,我找到了答案。 Matplotlibs散点图大小参数不是为较大的绝对值而设置的,并且不按比例绘制或采用相对值,因此“蓝色块”区域覆盖了整个图表。 通过更改代码(添加比例因子),可以生成一个漂亮的图表:
df.plot.scatter(x='hour', y='weekday', s=df['freq']*0.001);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.