Construct mean-variance plots, separately for each column of the input data, and separately for each level of any input factor that is given (via a formula). This function was specially written for high dimensional data where there are many correlated variables exhibiting a mean-variance structure, in particular, multivariate abundance data in ecology.
meanvar.plot(x, ...) ## S3 method for class 'mvabund' meanvar.plot( x, n.vars=NULL, var.subset=NULL, subset=NULL, table=FALSE, ...) ## S3 method for class 'mvformula' meanvar.plot( x, n.vars = NULL, var.subset=NULL, subset=NULL, table=FALSE, overall.main=NULL, overlay=TRUE, ...)
an mvabund objects or a Model Formula (can be a formula or a mvformula) to be used.
the number of variables to include in the plot.
vector of indices indicating the variables to be included on the plot, (default: the
an optional vector specifying a subset of observations to be used.
logical, whether a table of the Means and Variances should be returned
an overall title for the window.
logical, whether overall means/variances for all variables are calculated and drawn on a single plot or calculated and plotted separately for different variables.
arguments to be passed to or from other methods.
meanvar.plot calculates a mean-variance plot for a dataset with many variables (e.g., Warton D. I., Wright S., and Wang, Y. (2012)).
The mean values and variances are calculated across all observations, unless a formula is given as the first argument which specifies a factor as the dependent variable. In this latter case the means and variances are calculated separately within the groups defined by these factors.
By default the means and variances of all variables (and all factor levels) are displayed on the same plot. If a formula is given and the explanatory variables contain factor variables, the mean values and variances for each factor level can be calculated and displayed either for all variables together or for each variable separately.
For the latter, set
FALSE. The mean-variances corresponding to the different factors will be drawn in different colors, that can be chosen by specifying
col can then either be a single color value (see
par) with the number of values being at least the maximum number of levels of the factors. The same applies to
NULL, par("mfrow") is used. If
all.labels = FALSE, only the x-axis labels at the bottom plot and the y-axis labels of plots on the right side of the window are printed if furthermore
main=NULL only the graphics on the top contain the full title, the other ones an abreviated one.
Note, that if a log-transformation is used for displaying the data, a specific mean-variance relation will not be visible in the plot, if either the calculated mean is zero and
log!="xy" or if the calculated variance
is zero and
By default the y/x ratio of the axis, specified by
asp, will be set to
log!="xy". If the mean-variance relation is not displayed on a log scale and
FALSE, it is most often not advisable to specify
asp, as there might not be one choice of
asp that is sensible for each of the plots.
TRUE a table of the Means and Variances is returned.
Otherwise, only the plot(s) is/are drawn.
Ulrike Naumann, Stephen Wright and David Warton <David.Warton@unsw.edu.au>.
Warton D. I., Wright S., and Wang, Y. (2012). Distance-based multivariate analyses confound location and dispersion effects. Methods in Ecology and Evolution, 3(1), 89-101.
Warton D.I. (2008). Raw data graphing: an informative but under-utilized tool for the analysis of multivariate abundances. Austral Ecology 33(3), 290-300.
require(graphics) ## Load the tikus dataset: data(tikus) tikusdat <- mvabund(tikus$abund) year <- tikus$x[,1] ## Plot mean-variance plot for a mvabund object with a log scale (default): meanvar.plot(tikusdat) ## Again but without log-transformation of axes: meanvar.plot(tikusdat,log="") ## A mean-variance plot, data organised by year, ## for 1981 and 1983 only, as in Figure 7a of Warton (2008): is81or83 <- year==81 | year==83 meanvar.plot(tikusdat~year, subset=is81or83, col=c(1,10))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.