Я использую пакет factoextra в R для создания графика силуэта. В настоящее время силуэт автоматически окрашивает ваш график с помощью кластеризации. Я хочу раскрасить другую переменную Site
, которую я определил как x. Я пробовал и заливку, и цвет, изменяя его на переменную сайта, но ничего не работает. Я также пытался использовать scale_color_manual
и scale_fill_discrete
. Я думаю, что ключ находится в scale_fill_discrete
, как указывает исходный код от другого пользователя.
mapping <- aes_string(x = "name", y = "sil_width", color = "cluster", fill = "cluster")
Мне в основном нужно изменить color="cluster"
на colour= "x"
.
Я вернул окончательный код построения графика к его самой простой форме.
pamspec <- pam(spec, 3, keep.diss = TRUE)
plot(pamspec)
spec <- cbind(pamspec$clustering)
autoplot(pam(spec,3), frame=TRUE, frame.type = "norm")
pamspec$site <- spec$Site
x <- pamspec$site
fviz_silhouette(pamspec, label=TRUE) + theme_classic()