переменная порядка тепловой карты ggplot2 - PullRequest
0 голосов
/ 07 мая 2018

Я пытаюсь построить тепловую карту корреляционной матрицы, используя ggplot2.

Это моя корреляционная матрица

cormatx <- rcorr(as.matrix(data.frame))$r

Я хочу изменить порядок корреляционной матрицы, используя корреляцию между переменными в качестве расстояния:

dist <- as.dist((1-cormatx)/2)
hcl <- hclust(dist)
cormatx1 <-cormatx[hcl$order, hcl$order]

Пока все хорошо. Теперь я преобразовываю матрицу корреляции в длинный формат

melted_cormatx <- melt(cormatx1)

Теперь я пытаюсь построить:

Plot1 <- ggplot(melted_cormatx, aes(X1, X2)) + 
  geom_tile(aes(fill = value)) + 
  theme(panel.background = element_blank(), 
        panel.grid.minor = element_blank(),            
        panel.grid.major = element_blank()) +
  scale_fill_gradient2(limits=c(-.4, .4),  
                       midpoint=0, low="navy", mid="white", high="red4", name="Scale") +
  theme(axis.text.x = element_text(angle=90, vjust=0.5, size=11, hjust=1),
        axis.title.x = element_blank(),
        axis.title.y = element_blank()) +
  theme(plot.title = element_text(size = rel(1)))

Я получаю тепловую карту со всеми переменными в алфавитном порядке, а не по расстоянию корреляции. Что я делаю не так ???

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...