Creates plots for visualizing a
## S3 method for class 'partition': plot((x, ask = FALSE, which.plots = NULL, nmax.lab = 40, max.strlen = 5, data = x$data, dist = NULL, stand = FALSE, lines = 2, shade = FALSE, color = FALSE, labels = 0, plotchar = TRUE, span = TRUE, xlim = NULL, ylim = NULL, main = NULL, ...))
- an object of class
"partition", typically created by the functions
- logical; if true and
plot.partitionoperates in interactive mode, via
- integer vector or NULL (default), the latter producing both plots. Otherwise,
which.plotsmust contain integers of
1for a clusplot or
- integer indicating the number of labels which is considered too large for single-name labeling the silhouette plot.
- positive integer giving the length to which strings are truncated in silhouette plot labeling.
- numeric matrix with the scaled data; per default taken from the partition object
x, but can be specified explicitly.
xdoes not have a
disscomponent as for
distmust be the dissimilarity if a clusplot is desired.
- stand,lines,shade,color,labels,plotchar,span,xlim,ylim,main, ...
- All optional arguments available for the
clusplot.defaultfunction (except for the
dissone) and graphical parameters (see
par) may also be supplied as arguments to this function.
ask= TRUE, rather than producing each plot sequentially,
plot.partition displays a menu listing all the plots that can be produced. If the menu is not desired but a pause between plots is still wanted, call
par(ask= TRUE) before invoking the plot command.
The clusplot of a cluster partition consists of a two-dimensional representation of the observations, in which the clusters are indicated by ellipses (see
clusplot.partition for more details).
The silhouette plot of a nonhierarchical clustering is fully described in Rousseeuw (1987) and in chapter 2 of Kaufman and Rousseeuw (1990). For each observation i, a bar is drawn, representing its silhouette width s(i), see
silhouette for details. Observations are grouped per cluster, starting with cluster 1 at the top. Observations with a large s(i) (almost 1) are very well clustered, a small s(i) (around 0) means that the observation lies between two clusters, and observations with a negative s(i) are probably placed in the wrong cluster.
A clustering can be performed for several values of
k (the number of clusters). Finally, choose the value of
k with the largest overall average silhouette width.
An appropriate plot is produced on the current graphics device. This can be one or both of the following choices:
Rousseeuw, P.J. (1987) Silhouettes: A graphical aid to the interpretation and validation of cluster analysis. J. Comput. Appl. Math., 20, 53--65.
Further, the references in
In the silhouette plot, observation labels are only printed when the number of observations is less than
nmax.lab (40, by default), for readability. Moreover, observation labels are truncated to maximally
max.strlen (5) characters.
For more flexibility, use
plot(silhouette(x), ...), see
## generate 25 objects, divided into 2 clusters. x <- rbind(cbind(rnorm(10,0,0.5), rnorm(10,0,0.5)), cbind(rnorm(15,5,0.5), rnorm(15,5,0.5))) plot(pam(x, 2)) ## Save space not keeping data in clus.object, and still clusplot() it: data(xclara) cx <- clara(xclara, 3, keep.data = FALSE) cx$data # is NULL plot(cx, data = xclara)
Documentation reproduced from package cluster, version 2.0.3. License: GPL (>= 2)