intxplot {HH}R Documentation

Interaction plot, with an option to print standard error bars.

Description

Interaction plot, with an option to print standard error bars. There is an option to offset group lines to prevent the bars from overprinting.

Usage

intxplot(x, data=sys.parent[1], groups.in,
          scales,
          key.length=1,
          key.lines,
          key=TRUE,
          trace.factor.name=deparse(substitute(groups.in)),
          x.factor.name=x.factor,
          xlab=x.factor.name,
          main=list(main.title, cex=main.cex),
          condition.name="condition",
          panel="panel.intxplot",
          summary.function="sufficient",
          se,
          ...,
          data.is.summary=FALSE,
          main.title=paste(
            "Interactions of", trace.factor.name, "and",
            x.factor.name,
            if (length(x[[3]]) > 1)
            paste("|", condition.name.to.use)),
          main.cex=1.5)

panel.intxplot(x, y, subscripts, groups, type = "l", ..., se, cv=1.96,
               offset.use=(!missing(groups) && !missing(se)),
               offset.scale=2*max(as.numeric(groups)),
               offset=
               as.numeric(groups[match(levels(groups), groups)]) / offset.scale,
               rug.use=offset.use)

Arguments

x For intxplot, a formula with a factor as the predictor variable. For panel.intxplot, standard argument for panel functions.
data data.frame, as used in xyplot.
groups.in groups.in, as used in xyplot.
scales Optional, additional arguments for the standard scales in xyplot.
key.length Number of columns in the key.
key.lines default value for the lines argument of key.
key logical. If TRUE, draw the key.
trace.factor.name Name of the grouping variable.
x.factor.name name of the dependent variable.
xlab as in xyplot, defaults to the name of the predictor variable from the formula.
main as in xyplot. Defaults to the main.title argument.
panel as in xyplot. Defaults to the "panel.intxplot".
condition.name name of the conditioning variable.
summary.function The default sufficient finds the mean, standard deviation, and sample size of the response variable for each level of the conditioning factor. See sufficient.
se standard errors to be passed to panel.intxplot. se Missing, logical, or a numeric vector. If missing or FALSE, standard errors are not plotted. If se=TRUE in intxplot, the standard errors are calculated from the sufficient statistics for each group as the group's standard deviation divided by the square root of the group's observation count. If se is numeric vector, it is evaluated in the environment of the sufficient statistics. the se argument to panel.intxplot must be numeric.
... In intxplot, arguments for panel.intxplot. In panel.intxplot, arguments for panel.superpose.
data.is.summary logical, defaults to FALSE under the assumption that the input data.frame is the original data and the intxplot function will generate the summary information (primarily standard deviation sd and number of observations nobs for each group). When TRUE, the standard error calculation assumes variables sd and nobs are in the dataset.
main.title Default main title for plot.
main.cex Default character expansion for main title.
y, subscripts, groups, type Standard arguments for panel functions.
cv critical value for confidence intervals. Defaults to 1.96.
offset.use logical. If TRUE, offset the endpoints of each group.
offset.scale Scale number indicating how far apart the ends of the groups will be placed. Larger numbers make them closer together.
offset Actual numbers by which the end of the groups are offset from their nominal location which is the as.numeric of the group levels.
rug.use logical. If TRUE, display a rug for the endpoints of each group.

Value

"trellis" object.

Author(s)

Richard M. Heiberger <rmh@temple.edu>

See Also

sufficient

Examples

## This uses the same data as the HH Section 12.13 rhizobium example.

rhiz.clover <- read.table(hh("datasets/rhiz3-clover.dat"), header=TRUE)
rhiz.clover$comb <- factor(rhiz.clover$comb,
                         labels=c("clover","clover+alfalfa"))
position(rhiz.clover$comb) <- c(2,5)
rhiz.clover$strain <-
  factor(rhiz.clover$strain,
         labels=c('3DOk1','3DOk5','3DOk4','3DOk7','3DOk13','k.comp'))
rhiz.clover$Npg <- rhiz.clover$nitro / rhiz.clover$weight

## interaction plot, no se
intxplot(Npg ~ strain, groups=comb, data=rhiz.clover)

## interaction plot, individual se for each treatment combination
intxplot(Npg ~ strain, groups=comb, data=rhiz.clover, se=TRUE)

## Rescaled to allow the CI bars to stay within the plot region
intxplot(Npg ~ strain, groups=comb, data=rhiz.clover, se=TRUE,
         ylim=range(rhiz.clover$Npg))

## interaction plot, common se based on ANOVA table
intxplot(Npg ~ strain, groups=comb, data=rhiz.clover,
         se=sqrt(sum((nobs-1)*sd^2)/(sum(nobs-1)))/sqrt(5))

## Rescaled to allow the CI bars to stay within the plot region
intxplot(Npg ~ strain, groups=comb, data=rhiz.clover,
         se=sqrt(sum((nobs-1)*sd^2)/(sum(nobs-1)))/sqrt(5),
         ylim=range(rhiz.clover$Npg))

## change distance between endpoints
intxplot(Npg ~ strain, groups=comb, data=rhiz.clover,
         se=TRUE, offset.scale=20)

## When data includes the nobs and sd variables, data.is.summary=TRUE is needed.
intxplot(Npg ~ strain, groups=comb,
         se=sqrt(sum((nobs-1)*sd^2)/(sum(nobs-1)))/sqrt(5),
         data=sufficient(rhiz.clover, y="Npg", c("strain","comb")),
         data.is.summary=TRUE,
         ylim=range(rhiz.clover$Npg))

[Package HH version 2.1-25 Index]