使用变量定义列时缩放多色谱

时间:2014-01-08 16:10:30

标签: plot gnuplot

我从脚本stuff.pl获取数据,并希望动态绘制到一个图表中。所以我将在Gnuplot(v4.6补丁级别3)中使用循环,这导致我遇到以下问题:

使用文件TEST.gp

xCol=2; yCol=3
set term x11 1
plot '< stuff.pl' u xCol:yCol

xCol=4; yCol=5
set term x11 1
set autoscale y
replot '< stuff.pl' u xCol:yCol

pause 1

并通过gnuplot TEST.gp运行,我的图表缩放不正确。该图只显示第二个图(按比例缩放)。

如果我使用

plot '< stuff.pl' u 2:3
replot '< stuff.pl' u 4:5

,它应该表现相同的imo,缩放工作。

我不理解这种行为。

1 个答案:

答案 0 :(得分:1)

replot调用上一个plot命令,然后添加另一个图。在上一个plot命令中,变量尚未替换。当replot调用上一个plot命令时,xColyCol的最后一个值将用于这两个图!

您可以使用两个不同的变量:

xCol1 = 2; yCol1 = 3
plot '< stuff.pl' u xCol1:yCol1

xCol2 = 4; yCol2 = 5
replot '< stuff.pl' u xCol2:yCol2

或者你可以使用被替换的宏

set macros
cols='2:3'
plot '< stuff.pl' u @cols

cols='4:5'
replot '< stuff.pl' u @cols