R 重排序树状图

R 重排序树状图,r,R,我想用reorder.dendrogram对一个树状图重新排序,但我不能对如何设置参数感到困惑 树状图有一个“异常值”分支,我想把它移到另一边 我可以通过这个剪切/合并调用来实现这一点,但通过重新排序,这肯定是可能的吗 以下是树状图: tdro <- structure(list(structure(9L, members = 1L, height = 0, label = "leaf1", leaf = TRUE, class = "dendrogram"), structure(li

我想用reorder.dendrogram对一个树状图重新排序,但我不能对如何设置参数感到困惑

树状图有一个“异常值”分支,我想把它移到另一边

我可以通过这个剪切/合并调用来实现这一点,但通过重新排序,这肯定是可能的吗

以下是树状图:

tdro <- structure(list(structure(9L, members = 1L, height = 0, label = "leaf1", leaf = TRUE, class = "dendrogram"), 
structure(list(structure(list(structure(list(structure(list(
    structure(15L, label = "leaf2", members = 1L, height = 0, leaf = TRUE, class = "dendrogram"), 
    structure(14L, label = "leaf3", members = 1L, height = 0, leaf = TRUE, class = "dendrogram")), members = 2L, midpoint = 0.5, height = 24.8381484584436, class = "dendrogram"), 
    structure(list(structure(13L, label = "leaf4", members = 1L, height = 0, leaf = TRUE, class = "dendrogram"), 
        structure(12L, label = "leaf5", members = 1L, height = 0, leaf = TRUE, class = "dendrogram")), members = 2L, midpoint = 0.5, height = 24.3975287023022, class = "dendrogram")), members = 4L, midpoint = 1.5, height = 33.1101361501252, class = "dendrogram"), 
    structure(list(structure(10L, members = 1L, height = 0, label = "leaf6", leaf = TRUE, class = "dendrogram"), 
        structure(list(structure(11L, label = "leaf7", members = 1L, height = 0, leaf = TRUE, class = "dendrogram"), 
            structure(8L, label = "leaf8", members = 1L, height = 0, leaf = TRUE, class = "dendrogram")), members = 2L, midpoint = 0.5, height = 30.9363490461899, class = "dendrogram")), members = 3L, midpoint = 0.75, height = 32.3912839969328, class = "dendrogram")), members = 7L, midpoint = 3.125, height = 36.9011152635297, class = "dendrogram"), 
    structure(list(structure(5L, members = 1L, height = 0, label = "leaf9", leaf = TRUE, class = "dendrogram"), 
        structure(list(structure(list(structure(4L, members = 1L, height = 0, label = "leaf10", leaf = TRUE, class = "dendrogram"), 
            structure(list(structure(2L, label = "leaf11", members = 1L, height = 0, leaf = TRUE, class = "dendrogram"), 
              structure(6L, label = "leaf12", members = 1L, height = 0, leaf = TRUE, class = "dendrogram")), members = 2L, midpoint = 0.5, height = 20.537001267289, class = "dendrogram")), members = 3L, midpoint = 0.75, height = 27.9153607968991, class = "dendrogram"), 
            structure(list(structure(list(structure(7L, label = "leaf13", members = 1L, height = 0, leaf = TRUE, class = "dendrogram"), 
              structure(3L, label = "leaf14", members = 1L, height = 0, leaf = TRUE, class = "dendrogram")), members = 2L, midpoint = 0.5, height = 19.3278637150999, class = "dendrogram"), 
              structure(1L, members = 1L, height = 0, label = "leaf15", leaf = TRUE, class = "dendrogram")), members = 3L, midpoint = 1.25, height = 27.6624008548179, class = "dendrogram")), members = 6L, midpoint = 2.5, height = 30.8706298846279, class = "dendrogram")), members = 7L, midpoint = 1.75, height = 41.426993488228, class = "dendrogram")), members = 14L, midpoint = 5.9375, height = 41.7600747862578, class = "dendrogram")), members = 15L, midpoint = 3.46875, height = 66.2893195420674, class = "dendrogram")
plot(tdro)

这样它就变成了
want\u tdro
?和为什么

您提供给
重新排序.dendrogram()
函数的权重必须与用于构建树状图的原始数据的顺序相同。这不一定与您标记叶子的顺序相同(
“leaf1”
“leaf15”
)。通过使用最简单的权重,
1:15
,然后查看分配给每个叶的值,可以检查基本顺序

tdro2 <- reorder(tdro, 1:15, mean)
str(tdro2)

上一个语句中缺少右括号。感谢您的关注。更正奇怪,我也不明白;我认为
plot(重新排序(tdro,c(15:1))
可以做到这一点,但排序在两个地方是错误的。
plot(reorder(tdro, c(15,1:14)))
tdro2 <- reorder(tdro, 1:15, mean)
str(tdro2)
tdro3 <- reorder(tdro, c(14, 10, 13, 9:8, 11:12, 7, 15, 5:6, 4:1), mean)
plot(tdro3)