GNUplot中的多个图

时间:2012-09-13 02:39:54

标签: linux gnuplot

我想在GNUplot中进行多重绘图或子绘图。我有两个文件,在两个文件中有x1,y1。我想在GNUplot中绘制两个图形,如子图。假设我有以下两个文件

Plot1

12:14:38 10

12:15:38 11

12:16:38 12

12:17:38 15

和另一个文件

Plot2

12:17:38 15

12:18:38 11

12:19:38 12

12:20:38 15

我想为这两个值生成两个图表。我如何使用GNUplot来做到这一点。任何人都可以帮助我。

由于

1 个答案:

答案 0 :(得分:12)

如果我理解你的要求,这里是基本语法:

set term png size 600,400
set output 'plot.png'

set multiplot           # engage multiplot mode
set size 1.0,1.0        # sets the size of the first plot
set xdata time          ## these three lines control how gnuplot
set timefmt '%H:%M:%S'  ## reads and writes time-formatted data.
set format x '%H:%M:%S' ##

plot 'data1' u 1:2      # plot the first data set

set size 0.4,0.4        # set the size of the second plot in plot units
set origin 0.15,0.5     # set the origin for the second plot in plot units

plot 'data2' u 1:2      # plot the second data set

这会将第二个数据集绘制为子图。

subfigure plot

要在网格中制作两个图,您可以使用set multiplot layout

set term png size 600,300
set output 'plot.png'

set multiplot layout 1,2        # engage multiplot mode
#set size 1.0,1.0       # sets the size of the first plot
set xdata time          ## these three lines control how gnuplot
set timefmt '%H:%M:%S'  ## reads and writes time-formatted data.
set format x '%H:%M:%S' ##
set xtics 120           # make time spacing of 2 minutes

plot 'data1' u 1:2      # plot the first data set 

#set size 0.4,0.4       # set the size of the second plot in plot units
#set origin 0.15,0.5    # set the origin for the second plot

plot 'data2' u 1:2      # plot the second data set 
unset multiplot

enter image description here