define partition ! This allocates space for the three plots
set \0 gx2 - gx1 ! \0 is the width of the entire plot in device coords
set \1 gy2 - gy1 ! \1 is the height of the entire plot in device coords
set \2 \0 + \1 ! \2 is an average, ok for both portrait and landscape
set \2 \2 * 0.17 ! \2 is now the height of the halftone plot
set \5 gx1 + gx2
set \5 \5 * 0.5 ! \5 is the x center of the plot
set \0 \0 * 0.05 ! \0 is a gap in x between the 3d and line plot
set \1 \1 * 0.1 ! \1 is a gap in y between halftone and others
set \6 gx1 ! save gx1
set \7 gx2 ! save gx2
set \8 gy1 + \2 ! save gy1
set \9 gy2 ! save gy2
end
define plot1 ! This makes the line plot
set gx1 \5 + \0 ! set gx1 to gap width right of center
set gx2 \7 ! set gx2 to right boundary
set gy1 \8 + \1 ! set gy1 to gap width above halftone plot
set gy2 \9 ! set gy2 to top boundary
xcolumn -100 ! create abcissa for plot
ycolumn 25 ! extract center cut through data array for y
limits ! set plot limits
box 111 112 ! put a box with plain labels around the area
connect ! connect the curve
end
define plot2 ! This makes the 3d-plot
set gx1 \6 ! set gx1 to left boundary
set gx2 \5 - \0 ! set gx2 to gap width left of center
set gy1 \8 + \1 ! set gy1 to gap width above halftone plot
set gy2 \9 ! set gy2 to top boundary
3dplot 40 30 0.5 ! 3d-plot, altitude = 40, azimuth = 30, datamax ~ 0.5
end
define plot3 ! This makes the halftone and contour plot (2x1 aspect)
set gx1 \5 - \2 ! set gx1 to one height left of center
set gx2 \5 + \2 ! set gx2 to one height right of center
set gy1 \8 - \2 ! set gy1 to bottom boundary
set gy2 \8 ! set gy2 to one height above bottom
contour 1 0 ! draw one contour level at data = 0
halftone -0.1 0.6 ! make halftone plot: -0.1 = black, +0.6 = white
limits 0 100 0 50 ! set limits of plot
box ! put a box around the area
end