我有一个鸟舍,每次鸟进出时都通过摄像机运动检测来收集时间戳。现在,我有大量的时间戳,格式为:
2019-06-19-08:14:17
2019-06-19-08:16:59
2019-06-19-08:18:11
2019-06-19-08:20:44
2019-06-19-08:20:59
2019-06-19-08:25:33
2019-06-19-08:26:03
...
超过3天,我想将这些天的“鸟流量”形象化,以便说:“哦,两点钟是很多鸟流量...”。
到目前为止,我尝试的是一个非常基本的非功能性脚本:
set terminal pngcairo size 800,400 enhanced font 'Verdana,10' linewidth 1
set output 'birds.png'
set xdata time
set timefmt "%Y-%m-%d-%H:%M:%S"
set format x "%H:%M"
set xtics nomirror rotate by -45 font 'Verdana-Bold,10'
set ytics font 'Verdana-Bold,10'
set xrange ["2019-06-19-08:14:17":"2019-06-23-18:27:17"]
plot 'events.log'
我知道这可能与“平滑频率”和以某种方式对数据进行分箱有关,但是我不知道该怎么做。 有什么想法吗?
答案 0 :(得分:1)
set xdata time
set timefmt "%Y-%m-%d-%H:%M:%S"
set format x "%H:%M"
bin_width=120
bin(t) = (t - (int(t) % bin_width))
set boxwidth 100
plot [] [0:3] 'events.log' u (bin(timecolumn(1, "%Y-%m-%d-%H:%M:%S"))):(1.0) smooth freq with boxes
(找到解决方案here)