Plot all clusters in a 2-D projection space.
viewClusters(y, cl, outlierLabel=0,
projMethod="Eigen", xlim=NULL, ylim=NULL,
xlab="1st projection direction",
ylab="2nd projection direction",
title="Scatter plot of 2-D Projected Clusters",
font=2, font.lab=2, cex=1.2, cex.lab=1.2)
Data matrix. Rows correspond to observations. Columns correspond to variables.
Cluster membership vector.
Label for outliers. Outliers are not involved in calculating the projection
directions. Outliers will be represented by red triangles in the plot.
By default, outlierLabel=0
.
Method to construct 2-D projection directions.
projMethod="Eigen"
indicates that we project data to the
2-dimensional space spanned by the first two eigenvectors of the
between cluster distance matrix
projMethod="DMS"
indicates that we project data to the
2-dimensional space spanned by the first two eigenvectors of the
between cluster distance matrix
Range of X axis.
Range of Y axis.
X axis label.
Y axis label.
Title of the plot.
An integer which specifies which font to use for text (see par
).
The font to be used for x and y labels (see par
).
A numerical value giving the amount by which plotting text
and symbols should be scaled relative to the default (see par
).
The magnification to be used for x and y labels relative
to the current setting of 'cex' (see par
).
Between cluster distance matrix measuring the between cluster variation.
Columns of Q
are eigenvectors of the matrix B
.
Projected clusters in the 2-D space spanned by the first 2 columns of
the matrix Q
.
Dhillon I. S., Modha, D. S. and Spangler, W. S. (2002) Class visualization of high-dimensional data with applications. computational Statistics and Data Analysis, 41, 59--90.
Qiu, W.-L. and Joe, H. (2006) Separation Index and Partial Membership for Clustering. Computational Statistics and Data Analysis, 50, 585--603.
# NOT RUN {
n1<-50
mu1<-c(0,0)
Sigma1<-matrix(c(2,1,1,5),2,2)
n2<-100
mu2<-c(10,0)
Sigma2<-matrix(c(5,-1,-1,2),2,2)
n3<-30
mu3<-c(10,10)
Sigma3<-matrix(c(3,1.5,1.5,1),2,2)
n4<-10
mu4<-c(0,0)
Sigma4<-50*diag(2)
library(MASS)
set.seed(1234)
y1<-mvrnorm(n1, mu1, Sigma1)
y2<-mvrnorm(n2, mu2, Sigma2)
y3<-mvrnorm(n3, mu3, Sigma3)
y4<-mvrnorm(n4, mu4, Sigma4)
y<-rbind(y1, y2, y3, y4)
cl<-rep(c(1:3, 0), c(n1, n2, n3, n4))
par(mfrow=c(2,1))
viewClusters(y, cl)
viewClusters(y, cl,projMethod="DMS")
# }
Run the code above in your browser using DataLab