如何使用gnuplot绘制具有非常小的数据差异的数据文件列

时间:2015-10-23 12:51:40

标签: gnuplot matlab-figure

我有一个包含7列的数据文件,我需要绘制第一列与第4列,第5列,第6列和第7列。 数据文件如下所示:

1.005146    1   2   0   0   0   0
1.006025    1   2   0   0   0   0
1.008025    1   2   0   0   0   0
1.010025    1   2   0   0   0   0
1.012025    1   2   0   0   0   0
1.014025    1   2   0   0   0   0
1.015146    1   2   0   0   0   0
1.016025    1   2   0   0   0   0
1.018025    1   2   0   0   0   0
1.020025    1   2   0   0   0   0
......

当我尝试使用以下命令绘制图形时,我只得到一点:

plot "queuelength.txt" using 4 with linespoints 1

以及调整x和y范围的警告。所以要修复它我使用实际的x和y范围

plot [0:40][0:50] "queuelength.txt" using 4 with linespoints 1

但我一无所获!所以我试图将10行的第一列数据从1改为10,这样就可以了!这是否意味着gnuplot可以处理每行之间差异非常小的数据? 无论如何要处理它或使用gnuplot绘制它?

1 个答案:

答案 0 :(得分:1)

您的数据文件仅包含回车符(ASCII 13,\r)作为行结尾。 Gnuplot无法正确处理这些问题。您必须将换行符(ASCII 10,\n)或两个\r\n作为行结尾。

对我有用的是

plot '< sed ''s/\r/\n/g'' qlength_map1.txt' using 1:4