Time gnuplot事件频率随时间的变化

Time gnuplot事件频率随时间的变化,time,gnuplot,frequency,Time,Gnuplot,Frequency,我有一个鸟舍,每次鸟类进出时,我都会通过摄像机的运动检测来收集时间戳。现在我有了大量的时间戳,格式如下: 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 ... 三天多的时间,我想想象一下这几天的鸟流量,以便能够说,哦,两点钟的鸟流量很大 到目前为止,我尝试的是一个

我有一个鸟舍,每次鸟类进出时,我都会通过摄像机的运动检测来收集时间戳。现在我有了大量的时间戳,格式如下:

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
...
三天多的时间,我想想象一下这几天的鸟流量,以便能够说,哦,两点钟的鸟流量很大

到目前为止,我尝试的是一个非常基本的非功能脚本:

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'
我知道这可能与平滑频率和以某种方式组合数据有关,但我不知道如何做到这一点。 有什么想法吗

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

找到解决方案

太好了,谢谢。那么bin_width=120意味着它在2分钟内计算事件,bin?