1

我正在从hclust函数中创建 R 中的树状图,然后我使用ape包来创建和无根系统发育(纯粹用于可视化)并使用基本 R 绘制它plot。这看起来正是我想要的,除了我在 4 个类中有 166 个观察值。这意味着标签重叠,看起来像一团乱麻。无根发炎

我的问题是我如何(如果有的话)抖动标签以使它们尽可能少地覆盖?我弄乱了不同的cex设置,但是无论我选择什么值,它们的分组都保持紧密。

library(RColorBrewer)
library("dendextend")
library("dendextendRcpp")
library(cluster)
library(ape)

# Try ward distance clustering
clust.compl = hclust(dist,method = 'ward.D2')
dend = as.dendrogram(clust.compl) 

# Color branches - using dendoextend and dendoextendRcpp
colors <- brewer.pal(4, "Dark2")

# Cut tree so as to color based on cluster
clus4 = cutree(clust.compl, h=heights_per_k.dendrogram(dend)["4"])

# Plot unrooted
plot(as.phylo(clust.compl), 
     type = "unrooted",
     edge.width = 2, edge.lty = 2,
     tip.color = colors[clus4],
     no.margin = TRUE,
     label.offset = 0.5
     )

任何帮助表示赞赏

4

1 回答 1

2

在我看来,使用圆形树状图是解决您的问题的有价值的解决方案:

library(RColorBrewer)
library("dendextend")
library(cluster)
library(ape)

dst <- dist(mtcars)
clust.compl = hclust(dst,method = 'ward.D2')
dend = as.dendrogram(clust.compl) 
cols <- brewer.pal(4, "Dark2")
clus4 = cutree(clust.compl, h=heights_per_k.dendrogram(dend)["4"])

plot(as.phylo(clust.compl), type = "fan", tip.color=cols[clus4])

在此处输入图像描述

于 2017-04-28T11:52:20.343 回答