Morphometrics using R
Switch branches/tags
Nothing to show
Latest commit e550bb5 Apr 17, 2017 @vbonhomme v 1.1.6
Failed to load latest commit information.
.Rproj.user/F66B4F73 added subset.Out Mar 31, 2014
R v 1.1.6 Apr 17, 2017
data v 1.1.6 Apr 17, 2017
inst v 1.1.6 Apr 17, 2017
man v 1.1.6 Apr 17, 2017
tests more tests Nov 23, 2016
tmp v 1.1.6 Apr 17, 2017
vignettes v 1.1.6 Apr 17, 2017
.Rbuildignore dev comf Dec 5, 2016
.Rprofile version 1.0.0 Mar 18, 2016
.gitignore vignette is back Dec 6, 2016
.travis.yml email notifications May 21, 2016
DESCRIPTION v 1.1.6 Apr 17, 2017
Momocs.Rproj part of #13 and #106 Nov 27, 2015
Momocs_arch.jpg version 1.0.0 Mar 18, 2016
NAMESPACE v 1.1.6 Apr 17, 2017 Update Dec 6, 2016 1.1.0 release Oct 25, 2016
update.R version update Mar 8, 2016

  • Check the tutorial there or with browseVignettes("Momocs")
  • You're welcome to implement ideas, propose new ones, review the code, the helpfiles or the vignettes, report bugs, ask for help: here on GitHub or there:


Travis-CI Build Status CRAN_Status_Badge Coverage Status CRAN downloads last month CRAN downloads grand total

  • is a complete toolkit for morphometrics, from data extraction to multivariate analyses.
  • includes most common 2D morphometrics approaches : outlines, open outlines, configurations of landmarks, traditional morphometrics, and facilities for data preparation, manipulation and visualization with a consistent grammar throughout.
  • allows reproducible, pipeable, complex morphometric analyses and paves the way for a pure open-source workflow in R, and other morphometrics approaches should be easy to plug in, or develop from, on top of this canvas.
  • hinges on the core functions developed in the must-have book Morphometrics with R by Julien Claude (2008).

Use it

From CRAN: install.packages("Momocs")

But I recommend using the last version:

if (!requireNamespace("devtools")) install.packages("devtools")

You can cite it with: citation("Momocs")


Matrices of xy-coordinates

  • ~100 generic tools like centering, scaling, rotating, calculating area, perimeter, etc. Full list with apropos("coo_")
  • generic plotters: coo_plot and g (work in progress)

Data acquisition + Babel

  • Outline extraction from black mask/silhouettes .jpgs
  • Landmark definition on outlines (def_ldk or via StereoMorph)
  • Open curves digitization with bezier curves (via StereoMorph)
  • Import/Export from/to .nts, .tps, PAST, .txt, etc.

Outline analysis

  • Elliptical Fourier analysis (efourier)
  • Radii variation (rfourier)
  • Radii variation - curvilinear abscissa (sfourier)
  • Tangent Angle Fourier analysis (tfourier)


  • Natural (raw) polynomials (npoly)
  • Orthogonal (Legendre) polynomials (opoly)
  • Discrete Cosinus Transform (dfourier)
  • bezier core functions

Configuration of landmarks

  • Full Generalized Procrustes Adjustment (fgProcrustes)
  • Sliding semi-landmarks (fgsProcrustes)

Traditional morphometrics and global shape descriptors

  • Facilities for multivariate analysis (see flowers)
  • A long list of shape scalars (eg. coo_eccentricity, coo_rectilinearity, etc.)

Data handling

  • Easy data manipulation with filter, select, slice, mutate and other verbs ala dplyr
  • New verbs useful for morphometrics such as combine and chop, to handle several 2D views
  • Permutation methods to resample data (perm, breed)

Multivariate analysis

  • Mean shape (groupwise) calculations (mshapes)
  • Principal component analysis (PCA)
  • Multivariate analysis of variance (MANOVA + pairwise testing MANOVA_PW)
  • Linear discriminant analysis and screening (LDA)
  • Hierarchical clustering (CLUST)
  • K-means (KMEANS)

Graphical methods

  • Family pictures and quick inspection of whole datasets (stack and panel)
  • Some ggplot2 plots, when useful (and convet Momocs' objects into data.frames it withas_df`)
  • Morphological spaces for PCA
  • Thin plate splines and variation around deformation grids


  • Datasets for all types of data (bot, trilo, mosquito, hearts, olea, shapes, wings, oak, molars, flower, chaff, charring)
  • Shiny demonstrators/helpers. See Momecs
  • Online documentation