Mahalanobis distance-based hierarchical cluster analysis, in which elliptical clusters get found naturally.
devtools::install_github("tsieger/mhca")
library(mhca)
opar<-par(mfrow=c(2,2))
k<-3
n<-nrow(xy)
# classical HCA
h<-hclust(dist(xy))
# Mahalanobis HCA
mh<-mhclust(xy,thresh=.3)
ch<-cutree(h,k=k)
cmh<-cutree(mh,k=k)
# feature space plots with 3 top clusters
plot(xy[,1],xy[,2],asp=1,col=ch,main='HCA',frame=FALSE)
plot(xy[,1],xy[,2],asp=1,col=cmh,main='Mahalanobis HCA',frame=FALSE)
# HCA dendrogram
plot(h,hang=0,labels=FALSE,main='Dendrogram of HCA')
y<-min(h$height)-diff(range(h$height))/20
text(1:n,y,(1:n)[h$order],col=ch[h$order],srt=90)
# MHCA dendrogram
plot(mh,labels=FALSE,main='Dendrogram of MHCA')
y<-min(mh$height)-diff(range(mh$height))/10
text(1:n,y,(1:n)[mh$order],col=cmh[mh$order],srt=90)
par(opar)
Find out more at https://github.com/tsieger/mhca.
You can use https://github.com/tsieger/idendro or https://github.com/tsieger/idendr0 to interactively explore HCA dendrograms:
Please cite the paper "Detection and monitoring of normal and leukemic cell populations with hierarchical clustering of flow cytometry data" in Cytometry Part A.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.