Linux 基于列拆分gnuplot中的行
我有一大堆这样的数据:Linux 基于列拆分gnuplot中的行,linux,plot,gnuplot,Linux,Plot,Gnuplot,我有一大堆这样的数据: 0 0 50.5 -3.39358e-05 0 0 150.5 5.11472e-06 0 0 250.5 -3.87604e-06 0 0 350.5 -2.54219e-05 0 0 450.5 3.92257e-06 0 0 550.5 0.00198317 0 0 650.5 -4.96953e-05 0 0 750.5 -3.60458e-05 0 0 850.5 -2.30878e-05 0 0 950.5 1.67545e-07 1 0 126.5 4.17
0 0 50.5 -3.39358e-05
0 0 150.5 5.11472e-06
0 0 250.5 -3.87604e-06
0 0 350.5 -2.54219e-05
0 0 450.5 3.92257e-06
0 0 550.5 0.00198317
0 0 650.5 -4.96953e-05
0 0 750.5 -3.60458e-05
0 0 850.5 -2.30878e-05
0 0 950.5 1.67545e-07
1 0 126.5 4.17028e-05
1 0 226.5 -1.43637e-05
1 0 326.5 1.42918e-06
1 0 426.5 1.18147e-05
1 0 526.5 0.0020478
1 0 626.5 1.58651e-06
1 0 726.5 3.18537e-05
1 0 826.5 2.47536e-05
1 0 926.5 -4.20655e-05
我想在gnuplot上绘制类似的内容:
plot file using 3:($4+$1*factor) with lines
但这给了我一条连续的数据线。我想为
$1
的每个唯一值指定一行。也就是说,一个连续行用于所有数据,其中$1=0
,然后另一行用于$1=1
,依此类推。如何在行中添加这样的不连续性?您可以使用外部工具预处理数据,以便在第一列中的值更改时添加空行(在Windows上不起作用):
使用3:($4+$1*因子)绘制“
数据文件中的空行阻止gnuplot连接分离的数据点。如果您的数据都具有相同的结构,并且
$1=0
和$1=1
的行相同,您可以在plot
命令中使用每个关键字,但是你能告诉我gnuplot是如何解释它的吗
plot '< awk ''{if(x!=$1) {print ""}; x=$1;print}'' test.dat' using 3:($4 + $1*factor)