Как повернуть метки ylab в дендрограмме в R?

#r #dendrogram #dendextend

#r #дендрограмма #dendextend

Вопрос:

 df <- scale(mtcars) # Standardize the data

library("factoextra")
library("cluster")

dist <- dist(df, method = "euclidean") # df = standardized data
hc <- hclust(dist, method = "ward.D2")

fviz_dend(hc, k = 4, # Cut in four groups
          cex = 0.6, # label size
          k_colors = "jco",
          color_labels_by_k = TRUE, # color labels by groups
          rect = TRUE, # Add rectangle around groups
          rect_border = "jco",
          rect_fill = TRUE,
          rotate = TRUE)
 

Привет, новичок в r, мои вопросы;

  1. Я хочу, чтобы дендрограмма двигалась по часовой стрелке, как показано на рисунке ниже, как я могу создать горизонтальные метки ylab в дендрограмме
  2. Как я могу уменьшить пространство между метками оси и метками оси, которые я использовал для данных mtcars

введите описание изображения здесь

Ответ №1:

Следуя моему приведенному выше вопросу, я нашел код для поворота меток ylab в dendrogram. Публикуя здесь, это может быть полезно другим.

 library("ggdendro", "dendextend")
ggdendrogram(hc)   theme_minimal(16)  
  coord_flip()   
  theme(panel.grid.major.y = element_blank(),
        panel.grid.minor.y = element_blank())

library(dendextend)
hc %>% 
  as.dendrogram %>%
  set("branches_k_color", k = 3) %>% 
  set("branches_lwd", 1.2) %>%
  as.ggdend( ) %>%
  ggplot(horiz=TRUE, 
         offset_labels = -2.8 )   
  theme_minimal(16)  
  labs(x = "Y", 
       y = "X")  
  scale_y_continuous(position = "left")   
  theme(axis.text.y = element_blank(),
        panel.grid.major.y = element_blank(),
        panel.grid.minor.y = element_blank())
 

введите описание изображения здесь