如何在r中切割树状图

如何在r中切割树状图,r,dendrogram,hclust,dendextend,ggdendro,R,Dendrogram,Hclust,Dendextend,Ggdendro,好的,我肯定以前有人问过这个问题,但是经过几个小时的搜索,我在任何地方都找不到一个好的答案 我有一些数据,我进行分类,然后做一个树状图 具体来说,这个问题与美学有关;(1) 如何根据组的数量进行切割(在本例中,我想要3),(2)使组标签与树的分支对齐,(2)重新缩放以便组之间没有任何巨大的间隙 更多关于(3)的信息。我有一个物种丰富的数据集,如果不进行切割,将有约1000个种群。如果我在第三个位置砍树,树的右边有一些树枝,右边还有一英里,我想重新缩放,这样它就更近了。所有这些都可以通过外部程序实

好的,我肯定以前有人问过这个问题,但是经过几个小时的搜索,我在任何地方都找不到一个好的答案

我有一些数据,我进行分类,然后做一个树状图

具体来说,这个问题与美学有关;(1) 如何根据组的数量进行切割(在本例中,我想要3),(2)使组标签与树的分支对齐,(2)重新缩放以便组之间没有任何巨大的间隙

更多关于(3)的信息。我有一个物种丰富的数据集,如果不进行切割,将有约1000个种群。如果我在第三个位置砍树,树的右边有一些树枝,右边还有一英里,我想重新缩放,这样它就更近了。所有这些都可以通过外部程序实现,但我想在r中实现

  • 如果您可以将平均轮廓宽度图嵌套在此图的右上角,则可获得额外点数
  • 下面是使用iris数据的示例

    library(ggplot2)
    data(iris)
    df = data.frame(iris)
    df$Species = NULL
    
    ED10 = vegdist(df,method="euclidean")
    EucWard_10 = hclust(ED10,method="ward.D2")
    hcd_ward10 = as.dendrogram(EucWard_10)
    
    plot(hcd_ward10)
    plot(cut(hcd_ward10, h = 10)$upper, main = "Upper tree of cut at h=75")
    

    我怀疑你想看的是R软件包(里面还有一张纸)

    我不能完全确定你关于(3)的问题,因为我不确定我是否理解重新缩放的含义。我能告诉你的是,你可以做很多事情。下面是一个为3个组的分支和标签着色的快速示例

    library(ggplot2)
    library(vegan)
    data(iris)
    df = data.frame(iris)
    df$Species = NULL
    
    library(vegan)
    ED10 = vegdist(df,method="euclidean")
    EucWard_10 = hclust(ED10,method="ward.D2")
    hcd_ward10 = as.dendrogram(EucWard_10)
    
    plot(hcd_ward10)
    
    install.packages("dendextend")
    library(dendextend)
    dend <- hcd_ward10
    dend <- color_branches(dend, k = 3)
    dend <- color_labels(dend, k = 3)
    plot(dend)
    
    库(ggplot2)
    图书馆(素食主义者)
    数据(iris)
    df=数据帧(iris)
    df$Species=NULL
    图书馆(素食主义者)
    ED10=vegdist(df,method=“euclidean”)
    EucWard_10=hclust(ED10,方法=“ward.D2”)
    hcd_-ward10=as.树状图(EucWard_-10)
    地块(hcd_ward10)
    install.packages(“dendextend”)
    图书馆(Dendestend)
    
    丹德:谢谢,但还并没有回答有关砍伐树木后树枝和标签对齐的问题?我不明白这是什么意思。你能进一步解释一下你想要什么吗?你是在问如何用“切割”来确定切割的高度吗?
    library(plotly)
    library(ggplot2)
    p <- ggplot(dend)
    ggplotly(p)