如何在单个plot命令的gnuplot命令脚本中嵌入多个数据集?

如何在单个plot命令的gnuplot命令脚本中嵌入多个数据集?,gnuplot,Gnuplot,我发现在gnuplot中,可以从一个文件中获得多个曲线/数据集: splot "file.dat" using 1:2:3, splot "file.dat" using 1:4:5 还可以在脚本中嵌入数据,如下所示: splot "-" using 1:2:3 1 0 1 1 2 3 0.5 3 1.5 但是,以下情况似乎不起作用: splot "-" using 1:2:3, "-" using 1:4:5 1 0 1 4 4 1 2 3 3 4 0.5 3 1.5 2.5

我发现在gnuplot中,可以从一个文件中获得多个曲线/数据集:

splot "file.dat" using 1:2:3, splot "file.dat" using 1:4:5
还可以在脚本中嵌入数据,如下所示:

splot "-" using 1:2:3
 1 0 1
 1 2 3
 0.5 3 1.5
但是,以下情况似乎不起作用:

splot "-" using 1:2:3, "-" using 1:4:5
 1 0 1 4 4
 1 2 3 3 4
 0.5 3 1.5 2.5 -1

这是有意为之,是存在解决方案还是根本不可能?解决方案是

splot "-" using 1:2:3
 1 0 1
 1 2 3
 0.5 3

splot "-" using 1:2:3
 1 4 4
 1 3 4
 0.5 2.5 -1
如果可以将5列数据放入plotscript,则可以将其预处理为plotscript中的两个3列数据集

我不能让它像你那样在一条线上工作。这可能是不可能的,因为

splot 'dat.txt' using 1:2:3, '' using 1:3:4
有效,但是

splot '-' using 1:2:3, '' using 1:4:5
 1 0 1 4 4
 1 2 3 3 4
 0.5 3 1.5 2.5 -1

没有。

以下脚本按预期与Gnuplot 4.4一起工作。输出附在下面

set terminal png
set output 'e.png'
splot "-" using 1:2:3, "" using 1:2:3
 1 0 1 4 4
 1 2 3 3 4
 0.5 3 1.5 2.5 -1
e
 1 4 4
 1 3 4
 0.5 2.5 -1
e
set output

Gnuplot 5.0.1数据块

main.gnuplot

$data << EOD
 1 0.5  0.25  2  4
 2 1    1     4  8
 3 1.5  2.25  6 12
 4 2    4     8 16
 5 2.5  6.25 10 20
 6 3    9    12 24
 7 3.5 12.25 14 28
 8 4   16    16 32
 9 4.5 20.25 18 36
10 5   25    20 40
11 5.5 30.25 22 44
12 6   36    24 48
EOD

splot \
  "$data" using 1:2:3 with linespoints title "y = x/2, z = y^2", \
  "$data" using 1:4:5 with linespoints title "y = 2x,  z = 2*y"
输出:

Ubuntu 15.04有这个软件包

在Ubuntu 14.04上,您可以使用以下工具从源代码轻松编译gnuplot:

cvs -d:pserver:anonymous@gnuplot.cvs.sourceforge.net:/cvsroot/gnuplot login
cvs -z3 -d:pserver:anonymous@gnuplot.cvs.sourceforge.net:/cvsroot/gnuplot co -P gnuplot
cd gnuplot
cvs update -r Release_5_0_1
sudo apt-get build-dep gnuplot
sudo apt-get install lua5.2
./prepare
./configure
time make
sudo make install
gnuplot --version
是的,项目在撰写本文时使用


在Ubuntu18.10、gnuplot 5.2上测试。

你能解释一下第一行吗:“$data@JorisKinable这是一个神奇的语法,可以内联文件中的数据。语法取自shell heredocs。另请参见gnuplot 5.0.1中的帮助数据块。
cvs -d:pserver:anonymous@gnuplot.cvs.sourceforge.net:/cvsroot/gnuplot login
cvs -z3 -d:pserver:anonymous@gnuplot.cvs.sourceforge.net:/cvsroot/gnuplot co -P gnuplot
cd gnuplot
cvs update -r Release_5_0_1
sudo apt-get build-dep gnuplot
sudo apt-get install lua5.2
./prepare
./configure
time make
sudo make install
gnuplot --version