【问题标题】:How to colour the tips of tree by group in ggtree?如何在ggtree中按组为树的提示着色?
【发布时间】:2020-12-29 02:58:03
【问题描述】:

如何根据样本所属的组简单地为树的尖端着色?

nwk <- system.file("extdata", "sample.nwk", package="treeio")
tree <- read.tree(nwk)

group_1 <- rep("1.1.1", 5)
group_2 <- rep("1.1.2", 3)
group_3 <- rep("1.2", 2)
group_4 <- rep("1.2.1", 2)
group_5 <- "1.2"

meta_data <- data.frame(ID = LETTERS[1:13], 
                        group = c(group_1, group_2, group_3, group_4, group_5))

如何处理元数据以使提示显示为彩色圆圈或正方形(或其他形状)并根据这些颜色创建图例?

我在 ggtree 文档中看到了类似的树,但是它们的代码非常复杂(例如参见 https://guangchuangyu.github.io/ggtree-book/chapter-ggtree.html 中的第 4.3.7.3 节)。

此外,我无法重现这些示例,因为它们依赖于他们无处明确可用的元数据:

treefile <- "RAxML_bestTree.Aln_All_H3.nwk"
tipseqfile <- "Aln_All_H3_filted.fas"

例如。

必须有一种简单的方法使用此元数据为提示着色。

【问题讨论】:

    标签: r ggtree


    【解决方案1】:

    您可以将树转换为tibble,然后加入meta_data。然后你转换回一棵树并为geom_tiplab的美学添加颜色

    x <- full_join(as_tibble(tree), meta_data, by = c("label" = "ID"))
    
    tree2 <- as.treedata(x)
    
    ggtree(tree2) + geom_tiplab(aes(color = group))
    

    编辑:可以使用theme_tree 添加图例。我会留给你的

    【讨论】:

      猜你喜欢
      • 2021-08-23
      • 1970-01-01
      • 2020-12-27
      • 2016-10-21
      • 2012-08-17
      • 2020-12-07
      • 2020-11-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多