Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 基于列拆分gnuplot中的行_Linux_Plot_Gnuplot - Fatal编程技术网

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)