gnuplot:如何将两个数字并排放置

时间:2012-05-27 14:20:52

标签: gnuplot

我正在尝试使用gnuplot和多色插图并排放置两个数字。 我希望得到的图像是矩形的,所以我使用设置大小2,1。我还设置了设置多色布局1,2选项。但是,生成的图像仅使用可用空间的左侧部分。任何帮助将不胜感激。 谢谢 艾哈迈德

这是生成的图像 http://tinypic.com/r/33mlz04/6

以下是我正在使用的gnuplot命令。

set terminal postscript eps color enhanced
set output 'figure.eps'; 
set size 2,1;

set multiplot layout 1, 2 ;
set title "Figure 1";
  plot  "data1.txt" 
set title "Figure 1";
 plot  "data2.txt" 
unset multiplot

虽然我不太确定,经过一些试验和错误我已经解决了它


    set terminal postscript eps color enhanced 

    set output 'eps/image.eps'; 
    set size 1,0.5;

    set multiplot layout 1, 2 ;
    set title "Figure 1";
    set size 0.5,0.5;
    plot  "data/data1.txt" 
    set title "Figure 1";
    set size 0.5,0.5;
    plot  "data/data2.txt" 
    unset multiplot

3 个答案:

答案 0 :(得分:9)

尝试类似:

set terminal postscript eps color enhanced size 10,5
set output 'figure.eps';

set multiplot layout 1, 2 ;
set title "Figure 1";
plot  "data1.txt" 
set title "Figure 1";
plot  "data2.txt" 
unset multiplot

在终端规格线上设置尺寸时,它决定了绘图画布的实际尺寸(在本例中为英寸)。在单独的行上使用set size时,会以画布大小的相对单位设置绘图的大小。这在旧版本的gnuplot中有所不同。或许可以更好地解释一下,在gnuplot中尝试help set size

答案 1 :(得分:4)

为了更好地控制绘图的大小/位置,您可以将set originset size结合使用来更改每个绘图的位置和大小。最后,set lmargin at <place>set rmargin ...以及tmarginbmargin可以实现最大程度的控制,其中“lrtb”代表左,右,顶部和底部分别。

因此,要获得填充所有可用空间(从左到右)的绘图,您可以:

set multiplot
set lmargin at 0
set rmargin at .5
plot sin(x)
set lmargin at .5
set rmargin at 1
plot cos(x)
unset multiplot

但是,这通常是矫枉过正。通常gnuplot会尝试使边距足够大,以便您的标签等,但设置边距明确禁用它。我建议你选择安迪拉斯的解决方案。

答案 2 :(得分:1)

如果您在使用此方法时遇到问题超过2个数字,请添加&设置原点0,0&#39;在设定尺寸0.5,0.5&#39;之后。 例如,有三个数字:

set terminal postscript eps color enhanced 

set output 'eps/image.eps'; 
set size 1.5,0.5;

set multiplot layout 1, 3 ;
set title "Figure 1";
set size 0.5,0.5;
set origin 0,0
plot  "data/data1.txt" 
set title "Figure 2";
set size 0.5,0.5;
set origin 0,0
plot  "data/data3.txt"
set title "Figure 3";
set size 0.5,0.5;
set origin 0,0
plot  "data/data3.txt" 
unset multiplot