• 全国 [切换]
  • 二维码
    爱农网

    手机WAP版

    手机也能找商机,信息同步6大终端平台!

    微信小程序

    微信公众号

    当前位置: 首页 » 行业新闻 » 热点新闻 » 正文

    跟着BMC Plant Biology学作图:R语言ggtree圆形树形图并添加分组背景色

    放大字体  缩小字体 发布日期:2020-02-05 14:43:51   浏览次数:1185  发布人:763c****  IP:117.173.23.***  评论:0
    导读

    论文Comparative analysis of de novo genomes reveals dynamic intra‑species divergence of NLRs in pepper数据和代码 https://github.com/sdaf11111/NLR-map-in-pepper 论文中Figure2的示例数据和代码作者放到了github主页,我们可以学习一下他的代码 示例

    论文

    Comparative analysis of de novo genomes reveals dynamic intra‑species divergence of NLRs in pepper

    数据和代码

    https://github.com/sdaf11111/NLR-map-in-pepper

    论文中Figure2的示例数据和代码作者放到了github主页,我们可以学习一下他的代码

    示例数据是一个nwk格式的树文件 和 一个csv格式的分组文件

    学到的新知识点

    R包 svglite 输出图片如果保存为svg格式可能会用到这个R包

    函数split()可以把数据框根据某一列分组转换成列表格式,文字表达可能有点看不明白,看一下函数的输出效果

    df<-data.frame(x=c("A","A","B","B","B"), y=c(1,4,5,2,7)) df split(df$y,df$x)


    image.png

    函数geom_abline() ggtree里的函数,可以把树末端补平

    接下来是实际的代码

    首先是加载需要用到的R包

    library(dplyr) library(ggtree) library(ggplot2) library(svglite) library(scales)

    读取数据

    info <- read.csv("data/20230202/Annuum.Intact.NBARC.group.trimal92.csv") head(info) tree <- read.tree("data/20230202/Annuum.Intact.NBARC.tree.trimal92.nwk.txt")

    给树添加分组信息

    groupInfo<-split(info$ID,info$Group) tree<- groupOTU(tree, groupInfo)

    指定颜色

    heatmap.colours <- c("#be9fe1","#8ac6d1","#e1ccec","#fddb3a", "#C0C0C0","#c9b6e4","#d5c455","#ffb6b9","#fae3d9", "#9aceff","#d7cde6","#bbded6","#ede59a","#4f98ca", "#4a69bb","#f5cdaa","NA", "#c3d14a","#63b637","#FF0000","#008000","#FF1493","#FF4500") names(heatmap.colours) <- c("G1","G2","G3","G4", "G5","G6","G7","G8","G9", "G10","G11","G12","G13","GT", "GR","G14","NG", "CHIL","Know","CANN","CECW","CZUN","CASF")

    作图代码

    p <- ggtree(tree, layout='circular', size=0.2) %<+% info + geom_aline(linetype="solid", size=0.5, aes(color=group), alpha=0.5) + scale_colour_manual(values=heatmap.colours, breaks=c("G1","G2","G3","G4","G5", "G6","G7","G8","G9","G10", "G11","G12","G13","GT","GR", "G14","CHIL","Know","CANN", "CECW","CZUN","CASF"), name="Group") + theme(legend.position="right")+ geom_tippoint(aes(color=Species), size=0.2)+ guides(color=guide_legend(ncol=6)) q <- flip(p, 3001, 4090) %>% rotate(3507) ggsave(file="NLR_tree.92.pdf", plot=q, width = 9.4,height = 4)


    image.png

    这里有一个问题是geom_abline()函数的效果如果是在Rstudio的图片显示界面是看不到的,如果保存为pdf就可以看到效果。暂时不明白是什么原因

    论文中提供的代码还有一部分是计算MRCA,这部分我暂时没有想明白,想明白了再来介绍吧

    示例数据和代码可以到论文中提到的链接处下载,或者给推文点赞,点击在看,最后留言获取

    欢迎大家关注我的公众号

    小明的数据分析笔记本

    小明的数据分析笔记本 公众号 主要分享:1、R语言和python做数据分析和数据可视化的简单小例子;2、园艺植物相关转录组学、基因组学、群体遗传学文献阅读笔记;3、生物信息学入门学习资料及自己的学习笔记!

    不推荐电脑端访问(用户少)
    请微信扫一扫,查看完整信息(记得微信收藏)
     
    (文/匿名(若涉版权问题请联系我们核实发布者) / 非法信息举报 / 删稿)
    打赏
    免责声明
    • 
    本文为昵称为 763c**** 发布的作品,本文仅代表发布者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,发布者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们154208694@qq.com删除,我们积极做(权利人与发布者之间的调停者)中立处理。郑重说明:不 违规举报 视为放弃权利,本站不承担任何责任!
    有个别老鼠屎以营利为目的遇到侵权情况但不联系本站或自己发布违规信息然后直接向本站索取高额赔偿等情况,本站一概以诈骗报警处理,曾经有1例诈骗分子已经绳之以法,本站本着公平公正的原则,若遇 违规举报 我们100%在3个工作日内处理!
    0 条相关评论
     

    (c)2008-现在 ikai.naodi.com All Rights Reserved.