问题标签 [ggtree]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1299 浏览

r - ggtree 显示的树的字体和大小

我正在尝试使用 R 包 ggtree 来可视化我的多基因树。我使用以下代码:

树的一些尖端标签在绘图区域之外并且不可见。我使用 dev.size("in") 命令获取图形窗口的大小,它返回:[1] 5.760417 5.750000。我希望树可以显示在 A4 纸张大小的区域中,所以我尝试通过以下方式制作更大的图形窗口:

但它不起作用。dev.size("in") 命令仍然返回:[1] 5.760417 5.750000,并且树的一些尖端标签仍然在绘图区域之外。如果我使用 ggsave 保存图像:

它给出了一个错误:

如果我将图像保存为 pdf 文件:

它可以工作并且可以保存图像,但是树的一些尖端标签仍在绘图区域之外。我尝试增加ggsave中的高度和宽度值,但是树的大小随着绘图画布的增加而增加,所以不可见的提示标签总是不可见的

您知道如何纠正问题并显示树的所有完整提示标签吗?如有任何帮助,我将不胜感激!</p>

0 投票
0 回答
264 浏览

r - 如何使用 phytools 在系统发育树上绘制离散字符?

我正在寻找将交配系统的类型(一夫一妻制、一夫多妻制和混杂)绘制到使用caper包构建的系统发育树ggtree()和 nexus 文件格式的超级树上。我曾尝试在 phytools 网站上遵循本教程,但是我对它的理解还不够。我的 S3 比较数据集如下所示:

在此处输入图像描述

我想制作一个圆形/扇形系统发育树,显示哺乳动物在树枝上使用的交配系统类型。重申一下,我已经制作了一棵令人满意的树——我想在它上面添加离散字符(MO、PG 或 PR)——将树的树枝向下可视化为三种颜色之一(红色、蓝色、紫色)。

我将这些数据用于我的树:

此代码用于创建 S3 比较数据集(SuperTree 是大多数哺乳动物物种的关联文件。我无法传递此文件,因为我是由其他人提供的)

最后,创建树的这段代码:

进化枝标签不会完全复制,因为我只提供了完整数据集的样本——希望这不是问题。

感谢您对我的问题和帮助的耐心等待。

0 投票
1 回答
407 浏览

r - 将 ggtree 对象添加到具有共享 y 轴的现有 ggplot

我有以下数据和情节:

数据:

阴谋:

在此处输入图像描述

此外,我有以下树对象:

绘制如下:

在此处输入图像描述

我想要做的是将树和第一个图结合起来,并在树中的顺序之后对第一个图的 y 轴进行排序,以便它们匹配。我在这里尝试使用一些解决方案,但我似乎无法使用 facet_plot 函数生成相同的图。有没有办法在两个图的 y 轴上识别加工值,然后将它们组合起来?

这就是我希望它看起来的样子(大约):

在此处输入图像描述

0 投票
1 回答
2802 浏览

r - 如何使用引导值注释 ggtree 对象?

我有一个phylo包含 24 个提示和 23 个内部节点的类的系统发育树。我使用 对这棵树和数据进行了引导分析boot.phylo,它返回了一个包含 23 个引导值的向量。我从原始树创建了一个 ggtree 对象,现在正尝试将引导值添加到节点。我做错了什么,但我不知道是什么。

这是我所做的:

bphylo$BP是 23 个引导值的向量。当我运行此代码时,我收到以下错误:

我不明白这个错误,因为我只想将引导值放在可能的 47 个位置中的 23 个上。

当我调用以下函数时,我得到的值为 23:

如果 的长度gg.tr$data$isTip==FALSE是 23 并且我有 23 个引导值,为什么我会收到错误消息,告诉我我的标签长度​​错误?

0 投票
1 回答
354 浏览

r - 基于ggtree中的外部数据集着色标签

我有一个.tre格式和随附数据集的系统发育树。树的确切形式无关紧要,它只是一个随机的系统发育树。数据集有两列:名称颜色

在绘制这样的树时,我很可能会从随附的数据集中向树中添加彩色点(两种不同的颜色)。问题是当我使用以下代码时:

当然,它会为点着色,但颜色具有它们在随附数据集中的顺序。

但是我想将基于树中物种名称的颜色与数据集中的颜色进行匹配(它们的格式相同,但顺序不同)。我还没有弄清楚。你能帮我解决这个问题吗?

非常感谢。

示例代码:

我得到了什么: 错误标记的树

我想得到什么: 正确标记的树

0 投票
0 回答
753 浏览

r - gheatmap(ggtree 包)中的错误:“错误:必须从色调调色板中请求至少一种颜色。”

最后一行给出了一个错误:

错误内容如下:

我检查了 gheatmap 函数的默认参数colours

编辑
我试图做一个可重现的例子:

0 投票
1 回答
2179 浏览

r - 将图例添加到 ggtree (ggplot) R

我正在 R 上用 ggtree 构建一棵树。

这是newick文件内容:

这是我使用的代码:

为了根据引导级别获得点颜色,我使用了这部分:变量geom_nodepoint(color=col, alpha=1, size=1.5, show.legend = TRUE)在哪里,col例如:

我根据此变量中的数字制作:

现在我只想在树中显示 5 个范围的颜色图例,例如:在此处输入图像描述

但该选项 show.legend = TRUE不适用于此。有人有想法吗?我也尝试添加p + theme(legend.position="right"),但仍然没有传说。

谢谢您的帮助。

这是代理(树)

0 投票
0 回答
638 浏览

r - 如何使用子集参数修复旧的 ggplot2 代码

我想运行这段代码(如下)为一些正射影像数据生成收益/损失树。我一直在关注 github 指南 https://github.com/guyleonard/orthomcl_tools

并且已经完成了所有这些,除了最后一部分用于绘制数据。

我敢肯定有很多方法可以做到这一点,ggplot2但如果有人知道如何修复此代码以使子集参数不再存在,那将非常有帮助。

这是我收到的错误消息:

警告:忽略未知参数:子集 警告:忽略未知参数:子集 警告:忽略未知参数:子集 警告:忽略未知参数:子集 警告:忽略未知参数:子集 警告消息:名称标准化后重复美学:大小

我还不确定那个美学错误是否会让我感到悲伤,但我知道R不再使用subset,所以这绝对是一个问题。

0 投票
1 回答
1907 浏览

r - 如何结合系统发育树和热图?

我需要结合系统发育树和热图,所以我一直在尝试通过在 R 中使用 ggtree 和 phytools 包来做同样的事情。但是,我没有成功。我的数据集如下,

以下教程采用了代码, http ://www.randigriffin.com/2017/05/11/primate-phylogeny-ggtree.html 代码如下,

当我遵循相同的代码而不做任何更改时,它工作得非常好。但是,当我尝试使用我的数据时,它显示错误。我不知道,如何使用 fastBM 将我的树与数据文件结合起来。我想我应该使用其他功能,而不是 fastBM。请帮我做同样的事情。

0 投票
0 回答
515 浏览

r - 由于 scale_fill_manual 错误,无法在系统发育树旁边绘制热图

我正在尝试在系统发育树旁边绘制热图并根据数据为热图着色。但是,当我尝试在 R 中使用 ggtree 进行绘制时,出现错误:找不到函数“scale_fill_manual”。

我尝试了几次网络搜索来解决这个问题。我的代码基于以前发布的示例:https ://github.com/GuangchuangYu/plotTree-ggtree/blob/master/03_curated_genes.R

这是系统发育数据的示例(newick 格式的树文件):

(B:6.0,(A:5.0,C:3.0,E:4.0):5.0,D:11.0);

这是热图数据(csv 格式文件)的示例:

这是我当前的 R 脚本:

我希望这个网站上的情节类似于情节 3:https ://github.com/GuangchuangYu/plotTree-ggtree ,但是我收到错误:scale_fill_manual 中的错误(values = heatmap.colours,breaks = 1:7):可以找不到功能“scale_fill_manual”

我正在使用 R 版本 3.6.0、Bioconductor 版本 3.9 (BiocManager 1.30.4) 和 ggtree 版本 1.16.1

任何帮助将不胜感激!