【问题标题】:gnuplot event frequency over timegnuplot 事件频率随时间变化
【发布时间】:2019-06-24 02:17:49
【问题描述】:

我有一个鸟舍,每次鸟进出时都会通过摄像头运动检测收集时间戳。现在我有一堆格式的时间戳:

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 天,我想可视化这些天的“鸟类交通”,以便能够说,“哦,2 点钟是很多鸟类交通......”。

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

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'

我知道这可能与“平滑频率”和以某种方式合并数据有关,但我不知道该怎么做。 有什么想法吗?

【问题讨论】:

    标签: time gnuplot frequency


    【解决方案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

    【讨论】:

    • 太好了,谢谢。所以 bin_width=120 表示它以 2 分钟的 bin 计算事件?
    猜你喜欢
    • 1970-01-01
    • 2016-01-02
    • 1970-01-01
    • 2019-07-16
    • 1970-01-01
    • 2015-02-21
    • 1970-01-01
    • 1970-01-01
    • 2013-03-31
    相关资源
    最近更新 更多