查看原文
其他

iTOL快速绘制颜值最高的进化树!

生信宝典 2022-03-28

The following article is from 宏基因组 Author 猴头菇5518

iTOL简介

大家在看高分文章时,总会惊叹于,为什么人家能做出那么好看而且高大上的系统发育树,而且好看的图也能直接提升文章的档次,冲击高分文章。人家的树不管是从配色还是各种注释信息都让人无可挑剔,而你每次花了半个月时间做的进化树不是被老板嫌弃配色丑,就是太单调,没有各种辅助的注释信息。然后你默默捧起别人的文章学习时发现他们绝大部分都是用iTOL这个在线工具来进行的系统发育树的美化的。


这个Python工具可以实现多序列比对、模型筛选、进化树构建和绘制,ETE构建、绘制进化树

iTOL的基本使用流程:

  1. 搜索itol后进入如下界面,点右上角Login进入系统

  2. 新用户需要邮箱注册,老用户直接登录

  3. 点击进入My Tree,点击Upload tree files 或者直接把树文件拖入框中

  4. 点击树名称进入树的编辑界面,左上角依次是放大,缩小,还原当前窗口,树的信息以及搜索。右上角是Controls界面

  5. Basic界面可以设计树的形式,枝长,单击分支可编辑颜色,线条样式,序列名称,在Tree structure中可设置外群等

  6. 在Advance中可以显示或隐藏支持率 7.在合并分支选项中可以设置合并分支的阈值

大家如果从来没有用过iTOL可以看看以上推文,它们会教你怎么快速入门iTOL网站。但是这些推文都只教你了怎么去注册iTOL的用户,怎么上传你的树文件等一些非常简单基本的操作,离真正让你自己快速绘制一个高颜值进化树距离还很远!这些文章都只介绍了软件在线网页的使用,但如何准备软件的数据确是绝大多数用户的难点。当你想绘制自己的进化树时,花了半个月搞出来的图依旧很丑。

今天宏基因组就为你上点干货,你让半天时间制作的树,颜值超过之前半个月的工作。

怎么样才算是一颗高颜值的进化树呢?

比如以下这篇文章:

这是宏基因组公众号解读过的一篇microbiome的文章 (Beckers, B., et al. (2017). Microbiome 5(1): 25.)。 该图是本文的5个主图之一,也是本文最为重要的图。本文无论在数据量还是数据统计展示都很常规,但能发到10分左右的杂志,还是很值得大家学习一下!作者选用了与杨树不同生态位(根围土壤、根系、茎、叶子)相关的高丰度菌绘制环形系统发育树。选用在线的iTOL网站进行系统发育树美化。不同环形颜色代表不同细菌门,柱形图代表不同OTUs的相对丰度。

这篇文章中的图就是用iTOL网站进行绘制的!这个网站的使用非常简单,当你上传完树文件后,你只需要把对应的注释文件拖到屏幕上树所在的位置就能自动给你注释的树形结果,简直不要太方便有没有!但你需要准备所有的柱形图,热图,分组信息等注释文件。这些文件的准备其实才是最花费时间的步骤!


比如之前看iTOL网站的官方教程,想着手动去准备一个如下的注释文件:

DATASET_DOMAINS SEPARATOR TAB BACKBONE_COLOR    #FFFFFF BACKBONE_HEIGHT    0 BORDER_WIDTH    0.5 COLOR    #bebada DATASET_LABEL    Family HEIGHT_FACTOR    1 LEGEND_COLORS    #a6cee3    #1f78b4    #b2df8a    #33a02c    #fb9a99    #a6cee3    #1f78b4    #b2df8a    #33a02c    #fb9a99    #a6cee3    #1f78b4    #b2df8a    #33a02c    #fb9a99    #a6cee3    #1f78b4    #b2df8a    #33a02c    #fb9a99    #a6cee3    #1f78b4    #b2df8a    #33a02c    #fb9a99 LEGEND_LABELS    Bacillaceae_1    Bradyrhizobiaceae    Burkholderiales_incertae_sedis    Caulobacteraceae    Chloroplast    Comamonadaceae    Flavobacteriaceae    Herpetosiphonaceae    Hyphomicrobiaceae    Kineosporiaceae    Microbacteriaceae    Micromonosporaceae    Nocardioidaceae    Oxalobacteraceae    Pseudomonadaceae    Pseudonocardiaceae    Rhizobiaceae    Rhodospirillaceae    Sandaracinaceae    Sinobacteraceae    Sphingomonadaceae    Streptomycetaceae    Thermomonosporaceae    Unassigned    Xanthomonadaceae LEGEND_SHAPES    EL    EL    EL    EL    EL    RE    RE    RE    RE    RE    TL    TL    TL    TL    TL    TR    TR    TR    TR    TR    DI    DI    DI    DI    DI LEGEND_TITLE    Family MARGIN    5 SHOW_DOMAIN_LABELS    0 WIDTH    25 DATA OTU_657    10    DI|0|10|#b2df8a|Thermomonosporaceae OTU_2    10    RE|0|10|#a6cee3|Comamonadaceae OTU_3    10    TL|0|10|#fb9a99|Pseudomonadaceae OTU_4    10    TL|0|10|#fb9a99|Pseudomonadaceae OTU_5    10    EL|0|10|#fb9a99|Chloroplast OTU_6    10    EL|0|10|#b2df8a|Burkholderiales_incertae_sedis OTU_8    10    DI|0|10|#1f78b4|Streptomycetaceae OTU_7    10    RE|0|10|#1f78b4|Flavobacteriaceae OTU_9    10    TL|0|10|#1f78b4|Micromonosporaceae OTU_10    10    TR|0|10|#1f78b4|Rhizobiaceae OTU_17    10    DI|0|10|#33a02c|Unassigned

光想想这里的配色方案就让人头疼不已,准备这其中的一个注释文件可能就要花费几天时间,不仅费时费力,等你好不容易凑齐了几十种颜色,结果搭配起来还十分难看。

难道国外那些大牛画的高大上的进化树难道是他们自己手动准备的注释文件,按照自己的审美配的色吗?

这个我肯定不信,(绝对不能承认自己审美差!)本着开放获取的原则,本人终于在Github找到了一个别人写的自动生成iTOL注释文件的R包table2itol。用上这个R包就能帮助我们快速一键生成注释文件啦!

table2itol的Github地址 https://github.com/mgoeker/table2itol

制作注释文件

下面我将教大家快速自动生成高大上的注释文件

Windows软件安装

首先要安装table2itol这个进化树美化注释包,要确保你的R的版本高于 3.2 ,如果是windows系统推荐安装R 3.5,这样可以在Rstudio界面下直接调用Terminal,(但R语言在windows中对命令行支持比较差,容易出问题)。这时候只有我们准备的文件格式是txt格式就能使得table2itol在window系统下能运行:


1. windows直接下载,将table2itol该文件夹放置在:C:\Users\X\Documents 文件夹位置,注意路径中不能有中文。

Linux软件安装

有的同学习惯使用Linux系统,这里也给大家准备了Linux系统下,table2itol.R 包的安装教程:

table2itol的下载和安装

## Installation # git clone git@github.com:mgoeker/table2itol.git # 下载并解压 wget https://github.com/mgoeker/table2itol/archive/master.zip unzip master.zip mv table2itol-master table2itol # 测试 Rscript table2itol/table2itol.R chmod +x table2itol.R ./table2itol.R

在R或Rstudio中安装一些依赖关系

### 安装依赖包 site="https://mirrors.tuna.tsinghua.edu.cn/CRAN" # 依赖包列表:参数解析、数据变换、绘图和开发包安装、安装依赖、ggplot主题 package_list = c("grid","ggplot2","gridExtra","vegan","reshape2","readODS") # 判断R包加载是否成功来决定是否安装后再加载 for(p in package_list){    if(!suppressWarnings(suppressMessages(require(p, character.only = TRUE, quietly = TRUE, warn.conflicts = FALSE)))){        install.packages(p, repos=site)        suppressWarnings(suppressMessages(library(p, character.only = TRUE, quietly = TRUE, warn.conflicts = FALSE)))  } } #### 安装缺少的R包 source("http://bioconductor.org/biocLite.R") biocLite(c("optparse", "plotrix", "readODS", "readxl", "yaml"))

准备输入文件

2. 准备注释文件,这里我们给大家准备好了一个测试数据集的输入文件:

文件一:annotation注释表,大家可以按照这个格式准备你的原始文件,大家还可以在表中添加自己需要的信息


主要包括每个OTU的物种注释,从门到属;还有就是对应的整体相对丰度和在各实验组中的平均相对丰度。


文件二:这个文件实际上就是咱们提取的高丰度OTUs中的OTUs ID所对应的小OTUs table


3. 然后我们所有的准备工作就做好了,可以运行代码进行注释文件的生成啦!

生成注释文件

我们给大家选取了五种注释样式和配色方案,直接运行一下命令就能生成iTOL注释文件的格式:

## 方案1. 外圈颜色、形状分类和丰度方案 # annotation.txt OTU对应物种注释和丰度, #-a 找不到输入列将终止运行(默认不执行)-c 将整数列转换为factor或具有小数点的数字,-t 偏离提示标签时转换ID列,-w 颜色带,区域宽度等, -D输出目录,-i OTU列名,-l OTU显示名称如种/属/科名, Rscript table2itol/table2itol.R -a -c double -D plan1 -i OTUID -l Genus -t %s -w 0.5 annotation.txt # 生成注释文件中每列为单独一个文件 ## 方案2. 生成丰度柱形图注释文件 Rscript table2itol/table2itol.R -a -d -c none -D plan2 -b Phylum -i OTUID -l Genus -t %s -w 0.5 annotation.txt ## 方案3. 生成热图注释文件 Rscript table2itol/table2itol.R -c keep -D plan3 -i OTUID -t %s otutab.txt ## 方案4. 将整数转化成因子生成注释文件 Rscript table2itol/table2itol.R -a -c factor -D plan4 -i OTUID -l Genus -t %s -w 0 annotation.txt ## 方案5. 自定义颜色 Rscript table2itol/table2itol.R -a -C table2itol/tests/INPUT/colours_1.yml -c double -D plan5 \  -i OTUID -l Genus -t %s -w 0.5 annotation.txt

注释文件美化

做好了所有注释文件,那就赶紧上itol网站测试一下 1.首先需要 访问iTOL官网http://itol.embl.de/

  1. 登录账户、或者注册账户(见上面详细教程

  2. 上传otus.nwk,再拖拽下方生成的注释方案于树上即美化


我们把plan1文件夹中所有文件一次选中,生成的注释树的结果如下图:

方案1. 属名称多分类层级


我们把plan2文件夹中所有文件一次选中,生成的注释树的结果如下图:

方案2. 丰度柱状图



我们把plan3文件夹中所有文件一次选中,生成的注释树的结果如下图:

方案3. 热图


我们把plan4文件夹中所有文件一次选中,生成的注释树的结果如下图:

方案4



当然啦,这里的不同注释方案并不是说要让你去固定的使用某一种,你可以根据自己的需求,灵活搭配使用,最终画出你想要的结果!


 比如我们综合使用以上几种不同注释方案,通过在iTOL网站上再对树形,颜色等进行微调,得到的最终效果呈现图:



后台回复“高颜值进化树”即可获得所有测试数据,注释文件以及table2itol.R 安装包等。

宏基因组:教你用iTOL轻松绘制高颜值系统进化树

猜你喜欢

10000+:菌群分析 宝宝与猫狗 梅毒狂想曲 提DNA发Nature Cell专刊 肠道指挥大脑

系列教程:微生物组入门 Biostar 微生物组  宏基因组

专业技能:学术图表 高分文章 生信宝典 不可或缺的人

一文读懂:宏基因组 寄生虫益处 进化树

必备技能:提问 搜索  Endnote

文献阅读 热心肠 SemanticScholar Geenmedical

扩增子分析:图表解读 分析流程 统计绘图

16S功能预测   PICRUSt  FAPROTAX  Bugbase Tax4Fun

在线工具:16S预测培养基 生信绘图

科研经验:云笔记  云协作 公众号

编程模板: Shell  R Perl

生物科普:  肠道细菌 人体上的生命 生命大跃进  细胞暗战 人体奥秘  


更多阅读

画图三字经 生信视频 生信系列教程 

心得体会 癌症数据库 Linux Python 

高通量分析 在线画图 测序历史 超级增强子

培训视频 PPT EXCEL 文章写作 ggplot2

海哥组学 可视化套路 基因组浏览器

色彩搭配 图形排版 互作网络

后台回复“生信宝典福利第一波”获取教程合集

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存