如何绘制缺少数据线的图表?

时间:2014-10-22 14:43:53

标签: gnuplot lines

我及时记录了数据。但是缺少一些数据线,gnuplot用这些间隔中的长行替换它们。

如何在这些间隔中设置gnuplot而不是绘制线?

PS。我没有这些行中的免费单元格,我根本就没有这些行。

行:

column 1  ... col 195 
13:30:20.8   0.78061899
13:30:21.8    5.969546498
13:32:19.8   17.21257881
13:32:20.8   6.922475345

graph with long lines in interval

2 个答案:

答案 0 :(得分:1)

如果您不想在两点之间画一条线,则必须在两个点条目之间的数据文件中插入一个空行,这样才能有效地

13:30:20.8   0.78061899
13:30:21.8    5.969546498

13:32:19.8   17.21257881
13:32:20.8   6.922475345

这不能直接用gnuplot完成,但你可以使用例如awk即时进行处理:

set timefmt '%H:%M:%S'
set xdata time
filename = 'data.txt'
plot 'awk ''{split($1,d,":"); t_prev = t; t = (d[1] * 60 + d[2])*60 + d[3]; if (t_prev && (t - t_prev > 10)) print ""; print }'' '.filename with lines

此处,间隙阈值为10秒。

答案 1 :(得分:-1)

我想您的错过数据标识符是" NaN",那么您可以使用以下命令

plot "data" using 1:($2) with linespoints

而不是

plot "data" using 1:2 with linespoints

前者将忽略缺失的数据并将其视为空行,因此不会在间隙上绘制连接线,而后者将绘制连续的,不间断的线。