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

iTOL简介

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

之前看有好几个公众号的几篇文章推送了教大家怎么使用iTOL这个网站http://itol.embl.de/

例如:

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

生信生信微生物多样性研究之物种聚类树美化工具—iTOL

生信小王子使用iTOL美化进化树

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 安装包等。

猜你喜欢

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

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

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

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

必备技能:提问 搜索  Endnote

文献阅读 热心肠 SemanticScholar Geenmedical

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

16S功能预测   PICRUSt  FAPROTAX  Bugbase Tax4Fun

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

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

编程模板: Shell  R Perl

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

写在后面

为鼓励读者交流、快速解决科研困难,我们建立了“宏基因组”专业讨论群,目前己有国内外5000+ 一线科研人员加入。参与讨论,获得专业解答,欢迎分享此文至朋友圈,并扫码加主编好友带你入群,务必备注“姓名-单位-研究方向-职称/年级”。技术问题寻求帮助,首先阅读《如何优雅的提问》学习解决问题思路,仍末解决群内讨论,问题不私聊,帮助同行。

学习16S扩增子、宏基因组科研思路和分析实战,关注“宏基因组”

点击阅读原文,跳转最新文章目录阅读

相关推荐
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页