【问题标题】:ggtree highlight clades behindggtree 高亮后面的进化枝
【发布时间】:2020-10-12 02:21:49
【问题描述】:

我正在使用 R 包 ggtree 研究系统发育树,并希望突出显示节点。

我的树存放在p中,我要突出显示的节点在G10中。

p <- ggtree(tree, right=T, layout="circular")
G10 <- findMRCA(tree, c("genome1","genome2","genome3","genome4"), type=c("node")) 

我像这样突出显示节点:

p + geom_hilight(node=G10, fill="forestgreen", extendto = 0.6, alpha=1)

我想使用alpha=1 来获得漂亮、强烈的颜色,但是这种颜色会覆盖/隐藏树中的尖端,因此您看不到它们(见图)。有没有办法绘制这个,所以突出显示在树后面,这样我仍然可以看到提示?

编辑:我还没有找到一个好的解决方案,但我想出了一个暂时的解决方法:

创建两个图:树p + theme_transparent() 的透明图和带有突出显示的树p + geom_hilight(node=G10, fill="forestgreen", extendto = 0.6, alpha=1) 并将透明图覆盖在PowerPoint 中突出显示的图上并保存。

【问题讨论】:

  • 您好,如果您发布一个完整工作(最小)的示例,我和其他人可能会更容易提供帮助。目前,没有用于创建tree 或感兴趣的节点的代码。是否可以调用rtree 来创建一棵树,用它可以重现此问题?

标签: r highlight ggtree geom


【解决方案1】:

您可以调整树层和高光层的顺序。 ggtree 继承了 ggplot2 的特性。您可以使用ggtree(tr)ggplot(tr) + geom_tree() 来绘制您的树。所以可以参考下面的代码。

library(ggtree)
library(ggplot2)

set.seed(1024)

tr <- rtree(20)

p <- ggplot(tr) +
     geom_hilight(node=24,alpha=1,fill="forestgreen") +
     geom_tree(layout="roundrect") +
     geom_tiplab(size=4, hjust=0)
p

enter image description here

【讨论】:

    猜你喜欢
    • 2020-12-07
    • 2020-12-06
    • 1970-01-01
    • 1970-01-01
    • 2015-05-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多