cl如何更改kmeans群集中的坐标

时间:2020-04-08 10:26:17

标签: r dataframe k-means

我通过Kmeans集群绘制集群图。我想更改坐标,这里图像中的变量位于第4坐标,其余变量位于第2和第3坐标。所以我想在第二坐标中绘制一个变量,在第一坐标和第四坐标中绘制其余变量。另外,我想把情节变成黑色

enter image description here

我使用的代码:

df <- na.omit(HLA_A)

df <- scale(df) 

km.res <- eclust(df, "kmeans", k = 6,
                 nstart = 25, graph = TRUE)

head(km.res$cluster, 15)

fviz_cluster(km.res,  ellipse.type = "norm", ellipse.level = 0.6, repel = TRUE)

1 个答案:

答案 0 :(得分:0)

没有您的数据,但是您可以尝试以下操作。基本上,您可以取回data.frame进行绘图,然后将其传递给ggplot,指定几何图形等:

library(factoextra)
library(ggplot2)
library(ggrepel)
set.seed(122)
df = scale(iris[,-5])
df = df[sample(nrow(df),40),]
km.res <- eclust(df, "kmeans", k = 6,nstart = 25, graph = FALSE)

plt = fviz_cluster(km.res,  ellipse.type = "norm", ellipse.level = 0.6, repel = TRUE)
print(plt)

enter image description here

ggplot(plt$data,aes(x=x,y=y,shape=cluster)) + 
geom_point() + scale_x_reverse() + theme_bw() + 
geom_text_repel(aes(label=name)) +
stat_ellipse(level=0.7)

enter image description here