## S3 method for class 'meta':
forest(x, byvar=x$byvar, bylab=x$bylab,
print.byvar=x$print.byvar, sortvar, studlab=TRUE,
level=x$level, level.comb=x$level.comb,
comb.fixed=x$comb.fixed, comb.random=x$comb.random,
overall=TRUE,
text.fixed="Fixed effect model", text.random="Random effects model",
lty.fixed=2, lty.random=3,
text.fixed.w=text.fixed, text.random.w=text.random,
pooled.totals=comb.fixed|comb.random, pooled.events=FALSE,
xlab="", xlab.pos=ref,
smlab=NULL, smlab.pos=ref, xlim="symmetric",
allstudies=TRUE,
weight,
pscale=1,
ref=ifelse(x$sm \%in\% c("RR", "OR", "HR"), 1, 0),
leftcols=NULL, rightcols=NULL,
leftlabs=NULL, rightlabs=NULL,
lab.e=x$label.e, lab.c=x$label.c,
lab.e.attach.to.col=NULL, lab.c.attach.to.col=NULL,
label.right=x$label.right, label.left=x$label.left,
lab.NA=".",
lwd=1,
at=NULL, label=TRUE,
col.i="black", col.i.inside.square="white",
col.square="gray", col.square.lines=col.square,
col.diamond="gray",
col.diamond.fixed=col.diamond, col.diamond.random=col.diamond,
col.diamond.lines="black",
col.diamond.fixed.lines=col.diamond.lines,
col.diamond.random.lines=col.diamond.lines,
col.by="darkgray",
print.I2=TRUE, print.tau2=TRUE, print.Q=FALSE, print.pval.Q=TRUE,
hetstat=print.I2|print.tau2|print.Q|print.pval.Q,
overall.hetstat=overall&hetstat,
hetlab="Heterogeneity: ",
fontsize=12,
fs.heading=fontsize,
fs.fixed=fontsize, fs.random=fs.fixed, fs.study=fontsize,
fs.fixed.labels=fs.fixed, fs.random.labels=fs.random,
fs.study.labels=fs.study, fs.hetstat=fontsize-2,
fs.axis=fontsize,
fs.smlab=fontsize, fs.xlab=fontsize, fs.lr=fontsize,
ff.heading="bold",
ff.fixed="bold", ff.random=ff.fixed, ff.study="plain",
ff.fixed.labels=ff.fixed, ff.random.labels=ff.random,
ff.study.labels=ff.study, ff.hetstat="bold.italic",
ff.axis="plain",
ff.smlab="bold", ff.xlab="plain", ff.lr="plain",
##
squaresize=0.8,
boxsize=squaresize,
##
plotwidth=unit(6, "cm"),
colgap=unit(2, "mm"),
colgap.left=colgap, colgap.right=colgap,
colgap.forest=colgap,
colgap.forest.left=colgap.forest, colgap.forest.right=colgap.forest,
##
just="center",
##
addspace=TRUE,
##
new=TRUE,
##
digits=2, ...)meta.x$TE). Argument byvar can not be
used if x is an object of class metacum or
metainf.x$TE).x$TE then).byvar if summaries should only be plotted on group
level."same", "fixed", or
"random", can be abbreviated. Plot symbols metaprop.ref is equal to NA.lab.e should be attached to in table heading.lab.c should be attached to in table heading.par.grid.xaxis.grid.xaxis.byvar if heterogeneity statistics should only be
printegpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.gpar.print.default.byvar is not missing. The forest function is based on the grid graphics
system. In order to print the forest plot, (i) resize the graphics
window, (ii) either use dev.copy2eps or
dev.copy2pdf.
Information from object x is utilised if argument weight
is missing. Weights from the fixed effect model are used
(weight="fixed") if argument x$comb.fixed is
TRUE; weights from the random effects model are used
(weight="random") if argument x$comb.random
is TRUE and x$comb.fixed is FALSE.
The arguments leftcols and rightcols can be used to
specify columns which are plotted on the left and right side of the
forest plot, respectively. If argument rightcols is
FALSE, no columns will be plotted on the right side. By
default, i.e. if arguments leftcols and rightcols are
NULL, the following default columns will be plotted.
Argument rightcols: rightcols=c("effect", "ci"), i.e.,
estimated treatment effect and its level-confidence
interval. In addition, weights of the fixed ("w.fixed") and/or random effects
model ("w.random") will be given, if comb.fixed=TRUE
and/or comb.random=TRUE. For an object
of class metacum or metainf only the estimated treatment
effect with level-confidence interval are plotted.
Argument leftcols:
(i) leftcols=c("studlab", "event.e", "n.e", "event.c", "n.c")
for an object of class metabin,
(ii) leftcols=c("studlab", "n.e", "mean.e", "sd.e", "n.c",
"mean.c", "sd.c") for an object of class metacont,
(iii) leftcols=c("studlab", "TE", "seTE")
for an object of class metagen,
(iv) leftcols=c("studlab", "event", "n")
for an object of class metaprop,
(v) leftcols=c("studlab", "n")
for an object of class metacor,
(vi) leftcols=c("studlab")
for an object of class metacum or metainf.
The arguments leftlabs and rightlabs can be used to
specify column headings which are plotted on left and right side of
the forest plot, respectively. For certain columns predefined labels
exist. If the arguments leftlabs and rightlabs are
NULL, the following default labels will be used: for columns
c("studlab", "TE", "seTE", "n.e", "n.c", "event.e", "event.c",
"mean.e", "mean.c", "sd.e", "sd.c", "effect", "ci", "w.fixed",
"w.random") the labels c("Study", "TE", "seTE", "Total",
"Total", "Events", "Events", "Mean", "Mean", "SD", "SD",
summary measure, level for confidence interval, "W(fixed)",
"W(random)"). For additional columns the column name
will be used as label. It is possible to only provide labels for new
columns (see Examples). Otherwise the length of leftlabs and
rightlabs must be the same as the number of printed
columns. The value NA can be used to specify columns using the
default labels (see Example).
If arguments lab.e and lab.c are NULL,
"Experimental" and "Control" are used as labels for experimental and
control group, respectively.
The arguments pscale can be used to rescale proportions
for objects of class metaprop, e.g. pscale=100 means
that proportions are expressed per 100 observations. This is useful in
situations with (very) low proportions. For pscale=100, column
heading and x-axis label are changed to "Prop (in %)" and "Proportion
(in %"), respectively.
plot.meta, metabin, metacont, metagendata(Olkin95)
meta1 <- metabin(event.e, n.e, event.c, n.c,
data=Olkin95, subset=c(41,47,51,59),
sm="RR", method="I",
studlab=paste(author, year))
##
## Do (symmetric) forest plot
##
forest(meta1)
##
## Forest plot specifying argument xlim
##
forest(meta1, xlim=c(0.01, 10))
##
## Forest plot with 'classic' layout used in
## R package meta, version < 1.6-0
##
forest(meta1, col.square="black", hetstat=FALSE)
##
## Change set of columns printed on left side
## of forest plot
##
forest(meta1, comb.random=FALSE,
leftcols="studlab")
##
## Do not print columns on right side of forest plot
##
forest(meta1, rightcols=FALSE)
##
## Change study label to "Author"
##
forest(meta1, comb.random=FALSE,
leftlabs=c("Author", NA, NA, NA, NA))
##
## Just give effect estimate and 95% confidence interval
## on right side of forest plot
##
forest(meta1, rightcols=c("effect", "ci"))
##
## 1. Change order of columns on left side
## 2. Attach labels to columns 'event.e' and 'event.c'
## instead of columns 'n.e' and 'n.c'
##
forest(meta1,
leftcols=c("studlab", "n.e", "event.e", "n.c", "event.c"),
lab.e.attach.to.col="event.e",
lab.c.attach.to.col="event.c")
Olkin95$studlab <- paste(Olkin95$author, Olkin95$year)
##
## Add variables 'year' and 'author' to meta-analysis object
##
meta1$year <- addvar(meta1, Olkin95, "year")
meta1$author <- addvar(meta1, Olkin95, "author")
##
## Specify column labels only for newly created variables
## 'year' and 'author'
##
forest(meta1,
leftcols=c("studlab", "event.e", "n.e", "event.c", "n.c",
"author", "year"),
leftlabs=c("Author", "Year of Publ"))
##
## Change some fontsizes and fontfaces
##
forest(meta1,
fs.study=10, ff.study="italic",
fs.study.label=11, ff.study.label="bold",
fs.axis=5, ff.axis="italic",
ff.smlab="bold.italic",
ff.fixed="plain", ff.hetstat="plain")
##
## Change some colours
##
forest(meta1,
col.diamond="green", col.diamond.lines="red",
col.i=c("green", "blue", "red", "orange"),
col.square="pink", col.square.lines="black")Run the code above in your browser using DataLab