当我使用as.dendrogram

时间:2019-04-03 14:49:59

标签: r label axis-labels hierarchical-clustering hclust

当我使用“ as.dendrogram”绘制树状图时,所有叶子标签都被剪掉了。 请参见下面的链接图像作为示例:

当我使用“ hclust”绘图时(所有标签正确显示) Dendrogram 1

当我使用“ as.dendrogram”绘图时 Dendrogram 2

代码:

我创建的数据只是为了显示问题

test <- matrix(c(34,34,32,27,12,1,2,1,1,1), ncol=2)
colnames(test) <- c('Variable1', 'Variable2')
rownames(test) <- c('African Forest Elephant', 'Asian Domestic Elephant','African White Rhino','West African Giraffe','African Mountain Gorilla')
test_table <- as.table(test)

要绘制第一个链接的图像

hctest = hclust(dist(test_table))
plot(hctest, axes = FALSE)

第二个

hctest = as.dendrogram(hctest)
plot(hctest, edge.root = TRUE, horiz = TRUE)

PS:如果我使用“ horiz = FALSE”,则同样的问题仍然存在。我尝试导出图像,也尝试使用R markdown,但是没有任何变化。

1 个答案:

答案 0 :(得分:1)

您可以使用par通过调整绘图边距mar=c(bottom, left, top, right)来解决此问题。 (默认值为c(5, 4, 4, 2) + 0.1)。

par(mar=c(5, 4, 4, 10) + 0.1)
plot(hctest, edge.root=TRUE, horiz=TRUE)

enter image description here

数据

hctest <- structure(list(structure(5L, members = 1L, height = 0, label = "African Mountain Gorilla", leaf = TRUE), 
    structure(list(structure(4L, members = 1L, height = 0, label = "West African Giraffe", leaf = TRUE), 
        structure(list(structure(3L, members = 1L, height = 0, label = "African White Rhino", leaf = TRUE), 
            structure(list(structure(1L, label = "African Forest Elephant", members = 1L, height = 0, leaf = TRUE), 
                structure(2L, label = "Asian Domestic Elephant", members = 1L, height = 0, leaf = TRUE)), members = 2L, midpoint = 0.5, height = 1)), members = 3L, midpoint = 0.75, height = 2.23606797749979)), members = 4L, midpoint = 0.875, height = 7.07106781186548)), members = 5L, midpoint = 0.9375, height = 22.0227155455452, class = "dendrogram")