Learn R Programming

geomorph (version 2.0.1)

plotAllometry: Plot allometric patterns in landmark data

Description

Function plots allometry curves for a set of specimens

Usage

plotAllometry(A, sz, groups = NULL, method = c("CAC", "RegScore",
  "PredLine"), warpgrids = TRUE, iter = 99, label = FALSE, mesh = NULL,
  verbose = FALSE)

Arguments

A
An array (p x k x n) containing landmark coordinates for a set of specimens
sz
A vector of centroid size measures for all specimens
groups
An optional vector containing group labels for each specimen if available
method
Method for estimating allometric shape components; see below for details
warpgrids
A logical value indicating whether deformation grids for small and large shapes should be displayed
mesh
A mesh3d object to be warped to represent shape deformation of the directional and fluctuating components of asymmetry if {warpgrids= TRUE} (see warpRefMesh).
iter
Number of iterations for significance testing
label
A logical value indicating whether labels for each specimen should be displayed
verbose
A logical value indicating whether the output is basic or verbose (see Value below)

Value

  • Function returns an ANOVA table of statistical results for log centroid size: df, SS, MS, Prand. If verbose=TRUE, function returns a list with the following components:
  • ProcDist.lmAn ANOVA table as above
  • allom.scoreA matrix of the allometry shape scores
  • logCsizeA matrix of log centroid size
  • pred.shapeA matrix containing the predicted shapes from the regression
  • resid.shapeThe residual shape component (RSC) of the data ("method=CAC" only)

Details

The function performs a regression of shape on size, and generates a plot that describes the multivariate relationship between size and shape derived from landmark data (i.e., allometry). It is assumed that the landmarks have previously been aligned using Generalized Procrustes Analysis (GPA) [e.g., with gpagen]. The abscissa of the plot is log(centroid size) while the ordinate represents shape [NOTE: the function takes the input size and performed log-transformation automatically, as log(Csize) should be used]. Three complementary approaches can be implemented to visualize allometry:
  1. If "method=CAC" (the default) the function calculates the common allometric component of the shape data, which is an estimate of the average allometric trend within groups (Mitteroecker et al. 2004). The function also calculates the residual shape component (RSC) for the data.
If "method=RegScore" the function calculates shape scores from the regression of shape on size, and plots these versus size (Drake and Klingenberg 2008). For a single group, these shape scores are mathematically identical to the CAC (Adams et al. 2013). If "method=PredLine" the function calculates predicted values from a regression of shape on size, and plots the first principal component of the predicted values versus size as a stylized graphic of the allometric trend (Adams and Nistri 2010).

References

Adams, D.C., F.J. Rohlf, and D.E. Slice. 2013. A field comes of age: geometric morphometrics in the 21st century. Hystrix. 24:7-14. Adams, D. C., and A. Nistri. 2010. Ontogenetic convergence and evolution of foot morphology in European cave salamanders (Family: Plethodontidae). BMC Evol. Biol. 10:1-10. Drake, A. G., and C. P. Klingenberg. 2008. The pace of morphological change: Historical transformation of skull shape in St Bernard dogs. Proceedings of the Royal Society B, Biological Sciences 275:71'76. Mitteroecker, P., P. Gunz, M. Bernhard, K. Schaefer, and F. L. Bookstein. 2004. Comparison of cranial ontogenetic trajectories among great apes and humans. J. Hum. Evol. 46:679-698.

Examples

Run this code
data(ratland)
Y.gpa<-gpagen(ratland)    #GPA-alignment

#Using CAC for plot
plotAllometry(Y.gpa$coords,Y.gpa$Csize,method="CAC", iter=5)

#Using Regression Scores for plot
plotAllometry(Y.gpa$coords,Y.gpa$Csize,method="RegScore", iter=5)

#Using predicted allometry curve for plot
plotAllometry(Y.gpa$coords,Y.gpa$Csize,method="PredLine", iter=5)

Run the code above in your browser using DataLab