查看原文
其他

高颜值,随心搭!画一个高分文章中的进化树并不难--孙老湿讲ggtree

博文 生信者言 2022-03-29

 

ggtree提供了多种进化树格式数据的读取,并且能够读取并转换BEAST, r8s,RAxML等软件所生成的数据。轻松实现基于R的进化树高级绘图。 

 

ggtree也是基于ggplot2的扩展包,绘图原理和绘图参数设置的风格都和ggplot2相似,同时ggplot2的很多参数也是可以直接使用。所以有一定的ggplot绘图基础,并且结合heatmap很容易上手并画出精美的进化树。

 

ggtree美图来袭

 


 

 

ggtree可以识别多种进化树格式:

Newick

Nexus

New Hampshire     eXtended format (NHX)

Jplace

Phylip

ggtree可直接读取下列软件的输出文件

BEAST

EPA

HYPHY

PAML

PHYLDOG

pplacer

r8s

RAxML

RevBayes

常用软件输出格式数据的读取

read.newick读取newick格式数据

read.beast读取BEASE软件输出数据

read.codeml读取 CODEML (rst and mlc files)软件输出数据

read.codeml_mlc读取CODEML 软件输出的mlc格式数据

read.hyphy读取HYPHY软件输出数据

read.jplace读取软件EPA and pplacer输出的 jplace 格式数据

read.nhx读取软件PHYLODOG and RevBayes 输出的NHX 格式数据

read.r8s读取r8s软件输出数据

read.raxml读取 RAxML软件输出数据

 

ggtree绘制进化树有两种模式Phylogram (默认)和Cladogram (通过branch.length='none'参数设置):



 

同时,ggtree的常用展示方式有四种,分别是rectangular,slanted,circular,fan,可以通过layout参数设置:

 

 


 

ggtree包的学习或者使用可以按照下面的网址进行,介绍非常详细:

http://www.bioconductor.org/packages/release/bioc/vignettes/ggtree/inst/doc/ggtree.html

 

学习模块:


Tree Data Import                tree文件的读取

Tree Visualization               tree的可视化

Tree Manipulation              tree细节修改

Tree Annotation                 tree注释

Advance Tree Annotation  tree高级注释

ggtree utilities                    tree其他实用修饰工具


绘图主函数ggtree的常用参数:

tr读入的tree文件

mapping映射关系

layout展示方式 ‘rectangular’, ‘slanted’, ‘fan’, ‘circular’, ‘radial’, ‘equal_angle’ or ‘daylight’

open.angle开合角度,只对fan模式有效

as.Date在绘制time   tree时使用

ladderize显示方法

branch.length设置tree模式,默认Phylogram, 设置为none的时候是Cladogram

ndigits注释变量数值的精度

...其他参数,比如颜色,线形,字体大小等等


ggtree的两种绘图方式:

 

1.  ggplot模式:

ggplot(tree, aes(x, y)) +geom_tree() +theme_tree()


2.  ggtree模式,大家直接使用这种模式即可:

ggtree(tree)

 

示例

非常简单的一个例子,来自官网:


nwk <-system.file("extdata", "sample.nwk", package="treeio")  #nwk文件在电脑中的位置,ggtree包提供的示例文件tree <-read.tree(nwk)   #读取nwk格式树文件ggtree(tree) +geom_text2(aes(subset=!isTip, label=node), hjust=-.3) +geom_tiplab()  #绘图


 

注:官网有非常详细的使用教程,图文并茂,代码清晰明了,可供学习

http://www.bioconductor.org/packages/release/bioc/vignettes/ggtree/inst/doc/ggtree.html

 

 参考文献:

Yu G,Smith D K, Zhu H, et al. ggtree: an r package for visualization and annotationof phylogenetic trees with their covariates and other associated data[J].Methods in Ecology & Evolution, 2017.

/End.




推荐阅读

点击下方图片即可阅读

扫码关注,获取更多精彩内容

喜马拉雅FM搜索并订阅:生信者言;收听内容:

《一分钟听懂NGS基础概念》,让生信分析不再遥不可及

《亲爱的姑娘,你值得被温柔以待》,11个真实的人物故事

《众病之王:癌症传》,一起聆听人类对抗癌症的斗争史

回复文字:果然科学,看一篇好玩的科普文。

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

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