我有很长的Linux时间戳列表,代表了在一小时内(3600秒)发生事件的第二个时间戳。大多数事件相隔3-4秒,但有些事件间隔一秒钟,有些事件发生在同一秒钟:
1371995100
1371995103
1371995106
1371995106
1371995107
1371995109
1371995111
1371995113
1371995114
1371995118
1371995121
我想将此数据绘制为表示“事件发生”的一系列线条(注意1371995106
出现两次):
实际上,由于一分钟的分辨率比必要的更精细,但密度很重要,同时发生的事件可以“延续”到下一个自由秒(所以看起来好像第二个事件发生在1371995106
是针对下一个免费秒,1371995108
)绘制的:
这可以使用常用Linux发行版中的CLI工具进行绘制吗?我尝试了plot
(gnuplot)但无法找到从一维数据创建图表的示例。
答案 0 :(得分:1)
您正在尝试制作频率图。假设您的数据位于名为data的文件中,那么
set format x "%.0f"
set boxwidth .9
set style fill solid
plot 'data' using ($1):(1) smooth frequency title 'Frequency' with boxes
format
停止使用exponents
boxwidth
设置框的宽度,以便有间隙。
style
设置为填充框
smooth frequency
将y
设置为1的:(1)
值相加,x
($1)
是文件{{1}}中的第一个字段。