clКак изменить координату в кластере kmeans - PullRequest
0 голосов
/ 08 апреля 2020

Я строю график кластеров через кластер Kmeans. Я хочу изменить координату, здесь на изображении Переменная находится в 4-й координате, а остальные переменные в 2-й и 3-й координатах. Поэтому я хочу построить переменную во 2-й координате и остальные переменные в 1-й и 4-й координатах. Кроме того, я хочу сделать сюжет черным цветом

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 голосов
/ 08 апреля 2020

У вас нет ваших данных, но вы можете попробовать что-то вроде ниже. Обычно вы возвращаете data.frame для построения графика и передаете его в ggplot, указав geoms et c:

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

...