Learn R Programming

R2MLwiN (version 0.8-9)

caterpillar: Draws a caterpillar plot (in MLwiN style).

Description

A convenient wrapper for the plot function with the addition of error bars, e.g. to create caterpillar plots.

Usage

caterpillar(
  y,
  x,
  qtlow,
  qtup,
  xlab = "",
  ylab = "",
  xlim = NULL,
  ylim = NULL,
  main = ""
)

Arguments

y

A numerical vector specifying the y coordinates (e.g. the means or medians); see plot.default.

x

A numerical vector specifying the x coordinates; see plot.default.

qtlow

A numerical vector (e.g. of lower-quantiles) to be used to plot lower error bars.

qtup

A numerical vector (e.g. of upper-quantiles) to be used to upper plot error bars.

xlab

A label for the x axis. This is empty by default; see plot.default.

ylab

A label for the y axis. This is empty by default; see plot.default.

xlim

The x limits (x1, x2) of the plot. Note that x1 > x2 is allowed and leads to a `reversed axis'. The default value, NULL, indicates that the range of the finite values to be plotted should be used; see plot.default.

ylim

The y limits of the plot; see plot.default.

main

A main title for the plot; see plot.default.

Author

Zhang, Z., Charlton, C.M.J., Parker, R.M.A., Leckie, G., and Browne, W.J. (2016) Centre for Multilevel Modelling, University of Bristol, U.K.

See Also

caterpillarR

Examples

Run this code

if (FALSE) {
library(R2MLwiN)
# NOTE: if MLwiN not saved where R2MLwiN defaults to:
# options(MLwiN_path = 'path/to/MLwiN vX.XX/')
# If using R2MLwiN via WINE, the path may look like:
# options(MLwiN_path = '/home/USERNAME/.wine/drive_c/Program Files (x86)/MLwiN vX.XX/')

# Example using tutorial dataset
data(tutorial, package = 'R2MLwiN')
(mymodel <- runMLwiN(normexam ~ 1 + (1 | school) + (1 | student),
                     estoptions = list(resi.store = TRUE),
                     data = tutorial))

# For each school, calculate the CIs...
residuals <- mymodel@residual$lev_2_resi_est_Intercept
residualsCI <- 1.96 * sqrt(mymodel@residual$lev_2_resi_var_Intercept)
residualsRank <- rank(residuals)
rankno <- order(residualsRank)

caterpillar(y = residuals[rankno], x = 1:65, qtlow = (residuals - residualsCI)[rankno],
           qtup = (residuals + residualsCI)[rankno], xlab = 'Rank', ylab = 'Intercept')
}

Run the code above in your browser using DataLab