ordiplot {vegan}R Documentation

Alternative plot and identify Functions for Ordination


Ordination plot function especially for congested plots. Function ordiplot always plots only unlabelled points, but identify.ordiplot can be used to add labels to selected site, species or constraint points. Function identify.ordiplot can be used to identify points from plot.cca, plot.decorana, plot.procrustes and plot.rad as well.


ordiplot(ord, choices = c(1, 2), type="points", display, xlim, ylim, ...)
## S3 method for class 'ordiplot':
identify(x, what, labels,  ...)
## S3 method for class 'ordiplot':
points(x, what, select, ...)
## S3 method for class 'ordiplot':
text(x, what, labels, select, ...)


ord A result from an ordination.
choices Axes shown.
type The type of graph which may be "points", "text" or "none" for any ordination method.
display Display only "sites" or "species". The default for most methods is to display both, but for cca, rda and capscale it is the same as in plot.cca.
xlim, ylim the x and y limits (min,max) of the plot.
... Other graphical parameters.
x A result object from ordiplot.
what Items identified in the ordination plot. The types depend on the kind of plot used. Most methods know sites and species, functions cca and rda know in addition constraints (for `LC' scores), centroids and biplot, and plot.procrustes ordination plot has heads and points.
labels Optional text used for labels. Row names will be used if this is missing.
select Items to be displayed. This can either be a logical vector which is TRUE for displayed items or a vector of indices of displayed items.


Function ordiplot draws an ordination diagram using black circles for sites and red crosses for species. It returns invisibly an object of class ordiplot which can be used by identify.ordiplot to label selected sites or species, or constraints in cca and rda.

The function can handle output from several alternative ordination methods. For cca, rda and decorana it uses their plot method with option type = "points". In addition, the plot functions of these methods return invisibly an ordiplot object which can be used by identify.ordiplot to label points. For other ordinations it relies on scores to extract the scores.

For full user control of plots, it is best to call ordiplot with type = "none" and save the result, and then add sites and species using points.ordiplot or text.ordiplot which both pass all their arguments to the corresponding default graphical functions.


Function ordiplot returns invisibly an object of class ordiplot with items sites, species and constraints (if these are available in the ordination object). Function identify.ordiplot uses this object to label the point.


The purpose of these functions is to provide similar functionality as the plot, plotid and specid methods in library labdsv. The functions are somewhat limited in parametrization, but you can call directly the standard identify and plot functions for a better user control.


Jari Oksanen

See Also

identify for basic operations, plot.cca, plot.decorana, plot.procrustes which also produce objects for identify.ordiplot and scores for extracting scores from non-vegan ordinations.


# Draw a cute NMDS plot from a non-vegan ordination (isoMDS).
# Function metaMDS would be an easier alternative.
dune.dis <- vegdist(wisconsin(dune))
dune.mds <- isoMDS(dune.dis)
dune.mds <- postMDS(dune.mds, dune.dis)
dune.mds$species <- wascores(dune.mds$points, dune, expand = TRUE)
fig <- ordiplot(dune.mds, type = "none")
points(fig, "sites", pch=21, col="red", bg="yellow")
text(fig, "species", col="blue", cex=0.9)
# Default plot of the previous using identify to label selected points
## Not run: 
fig <- ordiplot(dune.mds)
identify(fig, "spec")
## End(Not run)

[Package vegan version 1.16-32 Index]