R与进化树(前言)

R与进化树

1. problems and issues

  • 进化领域中树这个文件结构是比较复杂的,构建树的过程就是把数据关联到文件格式中便于可视化的过程,这种关联格式主要有:

  • 标准格式之一 newick

  • 标准格式之二 nexus:软件间兼容性不好

  • 其他一些不兼容格式

Input & output
  • 如果只是想推断一棵树,大多数只用mega。但是现在的研究会获得大量的数据(phenotypic data/ experimental data/ clinical data/ analysis data),而且是异质性的,比如采样时间、地点,表型的观察值,实验测量数据等都是可以拿来分析有没有进化上的一些关系,mega远远不够用!但是上面的数据关联格式又不友好~

  • 树的注释:

    Figtree,TreeDyn, iTOL etc这些软件之间也是需要互相写脚本转换格式

  • restricted to pre-defined annotating utilities

  • focus on specific analyses and data types

  • non-overlapping features and hard to customise

2. R与ggtree

ggtree优势:

  • 他的设计就是针对不同来源的数据,拿来可以直接注释
  • 支持高水平图形语法进行树的注释:比如有一个分类数据,要根据这个对进化树上色,并且不同节点以不同形状变现出来。指定一个变量,ggtree就会做完所有的事情
  • 支持多个图层组合,可以画出很复杂的图
  • 可以提供用户的私人订制
  • 作为R包,能够保证可重复性,自动化,利于同行的交流

为什么要写代码作图,而不是简单的点点鼠标?

鼠标操作的都是套路化的东西,你会别人也会,就像公司做的图都很sexy,但是他们并不关系你的数据体现了什么价值。只有在自己通过不断完善代码的过程中,才会对自己的数据有更深的理解,才有可能挖掘更多的信息。
现在有许多一步出图,网站工具出图,很低的学习成本,做的图数量可能也不少,但是很多时候,自己都不知道这些图是怎么出来的,另外低学习成本的工具是不提供太多的拓展空间的。不知道你有没有这样的体会,在网站上做了一个图,很好看,基本符合预期,但是有一些线条形状/颜色或者图例位置需要改动,而网站上也没有这种设置,那么只好自己吭哧吭哧用PS、AI去编辑。心想:头脑中的图片很清楚,但为什么没有工具能帮我实现他的样子呢?于是,代码的价值就在这里

代码会带给自己一种能力,去探索自己的数据,就像在玩魔方,不同角度的观察就有不同的解答

可视化对于我们的作用:

  • 有了结果,需要展示给其他人
  • 还没有结果,甚至不知道从何下手,他可以帮你找到一些潜在的研究方向

为什么做生信分析必备R?

  • 开源免费
  • 很庞大的社区
    【Bionconductor 基本你能想到的组学上的东西,别人都能提供帮助】
  • 强大可视化功能

R的图形语法目前有两大类:

  • base:就像纸笔模型【不带橡皮擦】,直接出图做了不能撤销
    【打开R就加载】

  • grid 【包括 lattice + ggplot2】
    降低入门门槛;
    不直接出图,导出的是一个图形对象,可以继续编辑【相当于带了橡皮擦】
    画图是画在当前活动窗口

  • lattice:【安装R时装好,但需要自己加载】
    处理多维数据;
    使用grid修改细节,比ggplot2简单

  • ggplot2:【需要自己安装并加载】
    使用图形语法,不用纠结太细枝末节的东西(比如那条线用什么颜色,它会帮你上色);
    作图更美观

    • 【图形都是点--线--面组合起来的】
      ggplot2最基本的元素:

      数据data + 几何对象geom(用于映射数据)+ 坐标(一般都是笛卡尔)
      geom又包括了:
      美学aesthetics:描述了可视化的特征(比如数据中对应点的位置、大小、颜色、形状)
      标尺scales:可视化的东西如何转为可以显示的值(比如取色范围、点映射范围),比如画气泡图就是把点的映射范围放大

    • ggplot2作图模版:

]
数据与图层的对应
ggplot2模版

3. ggtree的用法

树的操作:

  • viewClade: 对进化分枝操作【画出一个分枝,然后旁边辅之一整棵树作为参考】
viewClade
  • groupOTU & groupClade: 把不同的分枝放在一起,赋予不同的颜色、线条
groupOTu & groupClade
  • scaleClade: 把分枝变大或变小
scaleClade
  • collapse & expand: 不展示某些不需要的节点具体分枝【可以逆向操作】
collapse & expand
  • rotate & flip: 可以把一个分枝旋转180度
rotate & flip
  • open_tree & rotate_tree: 把圆圈的树弄一个开口,然后还能旋转,弄成一个扇形
open_tree & rotate_tree
  • rescale_tree: 更改树的范围区间,可以放大可以缩小,并且可以用不同颜色表示不同范围区间的树
rescale_tree

树和数据怎么结合?

  • 两种需求:
  1. 把数据比对到树上,在树上展示数据 Mapping data to the tree structure;
    【图中的各个颜色的点就是比对到树上的数据,几组数据就用几个图层】
Mapping data to the tree structure
  1. 自己有数据并把他们做了可视化,但是想把数据的图和进化树对应拼接在一起【并非简单拼接两张图!要是要画出点图/箱线图/小提琴图等等来匹配树,或者根据树的结构重构数据的图】 Aligning graph to the tree based on tree structure
Aligning graph to the tree based on tree structure
  • 两种方法:
  1. 对于第一种需求:使用%<+%插入一个数据到树的图层中去
  2. 对于第二种需求,使用facet_plot分面画图,会把数据放到树中自动调整

ggtree的拓展

emojifont包、seqcombo

编程的语言学习

就想学习日常语言一样,我们除了母语还会学其他的语言,但是遇到什么问题第一时间反应就是说母语。编程语言也是如此,找一个自己领域社区最常使用的python/perl/R等,再深入学习,保证他能成为你的母语,让你有什么问题第一时间就想用它解决,这样就算学好了编程语言

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,937评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,503评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,712评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,668评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,677评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,601评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,975评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,637评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,881评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,621评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,710评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,387评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,971评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,947评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,189评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,805评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,449评论 2 342

推荐阅读更多精彩内容