首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >跟着Nature Genetics学画图:R语言ggbio包画基因结构图

跟着Nature Genetics学画图:R语言ggbio包画基因结构图

作者头像
用户7010445
发布2021-07-12 15:44:56
发布2021-07-12 15:44:56
4.3K2
举报

论文是 Pan-genome analysis highlights the extent of genomic variation in cultivated and wild rice

image.png

今天重复的图是来自于论文中的figure3 b

(示例数据和代码可以在今天推文次条的广告文案留言处获得下载链接,哈哈哈哈 想到了一个提高广告阅读量的好办法 哈哈哈 )

image.png

下半部分表示SNP的内容如何做暂时没有思路,今天的代码先介绍一些山半部分的基因结构,后面想到了实现办法再来记录

画上半部分的基因结构用到了ggbio这个包,这个也是ggplot2的一个扩展包

根据图中的基因名找到了他对应的gtf格式文件

image.png

将这部分内容单独复制到一个文件中

首先是读入数据

代码语言:javascript
复制
df<-read.csv("NG/waxy.gtf",
             header=F,
             sep="\t")
head(df)

image.png

加载作图需要用到的包
代码语言:javascript
复制
library(ggh4x)
library(ggplot2)
library(ggbio)
library(GenomicRanges)
构造画图用到的数据集
代码语言:javascript
复制
waxy<-GRanges("chr06",IRanges(df$V4,end=df$V5,group=df$V3))
接下来是画图代码
代码语言:javascript
复制
pdf(file = "NG/waxy.pdf",width = 10,height = 4)
autoplot(waxy,aes(fill=group),geom="alignment")+
  theme_bw()+
  scale_x_continuous(limits = c(1764000,1771000),
                     breaks = c(seq(1764000,1771000,by=1000)),
                     position = "top")+
  theme(panel.border = element_blank(),
        panel.grid = element_blank(),
        axis.line.x = element_line(),
        axis.ticks.length = unit(0.2,'cm'))+
  guides(x=guide_axis_truncated(trunc_lower = 1764000,
                                trunc_upper = 1771000))+
  scale_fill_manual(values = c("#92d050","#a6a6a6","#a6a6a6"))+
  theme(aspect.ratio = 0.1)+
  scale_y_continuous(limits = c(0,3))+
  theme(axis.text.y = element_blank(),
        axis.ticks.y = element_blank())+
  annotate(geom = "text",x=1764500,y=1,
           label="Nipponbare\n(waxy:Os06g0133000)")+
  coord_cartesian(clip="off")
dev.off()

image.png

这个和原图的差别 结尾处有一个箭头,这个暂时不知道如何实现

还有就是下侧的snp位点改如何实现

欢迎大家关注我的公众号

小明的数据分析笔记本

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

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-06-11,如有侵权请联系 cloudcommunity@tencent.com 删除
目录
  • 画上半部分的基因结构用到了ggbio这个包,这个也是ggplot2的一个扩展包
  • 加载作图需要用到的包
  • 构造画图用到的数据集
  • 接下来是画图代码
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档