Learn R Programming

vegan (version 1.0-1)

postMDS: Scaling of Multi-Dimensional Scaling Results

Description

Function performs some post-standardizations for multidimensional scaling, in order to make the configurations easier to interpret.

Usage

postMDS(x, dist, pc=TRUE, center=TRUE, halfchange=TRUE, threshold=0.8, nthreshold=10)

Arguments

x
Configuration from multidimensional scaling.
dist
Dissimilarity matrix used in multidimensional scaling.
pc
Rotate to principal components.
center
Centre the configuration.
halfchange
Scale axes to half-change units.
threshold
Largest dissimilarity used in half-change scaling.
nthreshold
Minimum number of points in half-change scaling.

Value

  • Standardized configuration (an array: stress and attributes are dropped).

Details

Multidimensional scaling has no internal, natural scaling or orientation of axes, and so similar configurations may look quite different. The function offers some standard methods that make configurations easier to compare.

Centring moves the origin to the average of each axis. Principal components rotate the configuration so that the variance of points is maximized on first dimensions.

Half-change scaling scales the configuration so that one unit means halving of community similarity from replicate similarity. Half-change scaling is based on closer dissimilarities where the relation between ordination distance and community dissimilarity is rather linear; the limit is controlled by parameter threshold. If there are enough points below this threshold (controlled by the the parameter nthreshold), dissimilarities are regressed on distances. The intercept of this regression is taken as the replicate dissimilarity, and half-change is the distance where similarity halves according to linear regression. Obviously the method is applicable only for dissimilarity indices scaled to $0 \ldots 1$, such as Kulczynski, Bray-Curtis and Canberra indices.

See Also

dist, vegdist, isoMDS

Examples

Run this code
library(mva)
library(MASS)
data(varespec)
vare.dist <- vegdist(varespec)
mds.null <- isoMDS(vare.dist)
par(mfrow=c(1,2))
eqscplot(mds.null$points)
mds.post <- postMDS(mds.null$points, vare.dist)
eqscplot(mds.post)

Run the code above in your browser using DataLab