Learn R Programming

sfsmisc (version 0.9-4)

mult.fig: Plot Setup for MULTiple FIGures, incl. Main Title

Description

Easy Setup for plotting multiple figures (in a rectangular layout) on one page. It allows to specify a main title and uses smart defaults for several par calls.

Usage

mult.fig(nr.plots, mfrow, mfcol,
         marP = rep(0, 4), mgp = c(1.5, 0.6, 0),
         mar = marP + 0.1 + c(4,4,2,1), oma = c(0,0, tit.wid, 0),
         main = NULL,
         tit.wid = if (is.null(main)) 0 else 1 + 1.5*cex.main,
         quiet = .Device == "postscript",
         cex.main = par("cex.main"), line.main = cex.main - 1/2,
         col.main = par("col.main"), font.main = par("font.main"), ...)

Arguments

nr.plots
integer; the number of plot figures you'll want to draw.
mfrow
instead of nr.plots: integer(2) vector giving the rectangular figure layout for par(mfrow= .).
mfcol
instead of nr.plots: integer(2) vector giving the rectangular figure layout for par(mfcol= .).
marP
numeric(4) vector of figure margins to add (``Plus'') to default mar, see below.
mgp
argument for par(mpg= .) with a smaller default than usual.
mar
argument for par(mar= .) with a smaller default than usual, using the marP argument, see above.
oma
argument for par(oma= .), by default for adding space for the main title if necessary.
main
character. The main title to be used for the whole graphic.
tit.wid
numeric specifying the vertical width to be used for the main title; note that this is only used for the default value of oma (s. above).
cex.main
numeric; the character size to be used for the main title.
line.main
numeric; the line at which the title.
col.main, font.main
color and font for main title; see par(*) for details.
quiet
logical; if TRUE, do not write the reminder about resetting par.
...
Further arguments to mtext for the main title.

Value

  • A list with two components that are lists themselves, a subset of par(),
  • new.parthe current par settings.
  • old.parthe par before the call.

See Also

par, layout.

Examples

Run this code
mult.fig(5, main= expression("Sine Functions " * sin(n * pi * x)))
x <- seq(0, 1, len = 201)
for (n in 1:5)
  plot(x, sin(n * pi * x), ylab ="", main = paste("n = ",n))
par(old.par)

rr <- mult.fig(mfrow=c(5,1), main= "Cosinus Funktionen", cex = 1.5,
               marP = - c(0, 1, 2, 0))
for (n in 1:5)
  plot(x, cos(n * pi * x), type = 'l', col="red", ylab ="")
str(rr)
par(old.par)
## Look at the par setting *AFTER* the above:
str(do.call("par", as.list(names(rr$new.par))))

Run the code above in your browser using DataLab