Я пытаюсь построить в dendrogram
с большим количеством узлов с использованием ggdendrogram
, и это довольно медленно (по сравнению с dendextend
, например):ggdendrogram для большого числа узлов
set.seed(1)
mat <- matrix(rnorm(100*10),nrow=100,ncol=10)
dend <- as.dendrogram(hclust(dist(mat)))
require(ggdendro)
require(dendextend)
require(microbenchmark)
> microbenchmark(ggdendrogram(dend,rotate=T,labels=F,size=4,theme_dendro=F))
Unit: milliseconds
expr min lq mean median uq max neval
ggdendrogram(dend, rotate = T, labels = F, size = 4, theme_dendro = F) 394.3181 409.3591 431.0981 412.515 416.4568 1346.844 100
> microbenchmark(dend %>% plot(horiz = TRUE))
Unit: milliseconds
expr min lq mean median uq max neval
dend %>% plot(horiz = TRUE) 138.7253 207.92 214.5278 208.8807 211.2602 640.0316 100
Есть ли способ ускорить его, чтобы сделать его сопоставимым с скоростью участка dendextend
?
Кроме того, могу ли я указать rotate=T
или
ggdendrogram(dend,rotate=F,labels=F,size=4,theme_dendro=F)+coord_flip()
Я получаю дендрограммы указывая слева:
, но я хочу, чтобы указать право вместо этого. Любая идея, как заставить это работать?
Это должно работать: 'ggdendrogram (dend, поворот = F, лейблы = F, размер = 4, theme_dendro = F) + coord_flip() + scale_y_reverse()' –