前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >R语言里可视化多序列比对(paf格式)的R包:pafr

R语言里可视化多序列比对(paf格式)的R包:pafr

作者头像
用户7010445
发布2022-04-08 13:44:51
1K0
发布2022-04-08 13:44:51
举报
文章被收录于专栏:小明的数据分析笔记本

pafr包的参考链接

https://cran.r-project.org/web/packages/pafr/vignettes/Introduction_to_pafr.html

首先用minimap2比对两个基因组

这里我用NCBI下载的两个拟南芥基因组做演示

下载两个基因组

代码语言:javascript
复制
wget https://ftp.ncbi.nlm.nih.gov/genomes/all/GCF/000/001/735/GCF_000001735.4_TAIR10.1/GCF_000001735.4_TAIR10.1_genomic.fna.gz
wget https://ftp.ncbi.nlm.nih.gov/genomes/all/GCA/019/202/795/GCA_019202795.1_ASM1920279v1/GCA_019202795.1_ASM1920279v1_genomic.fna.gz

解压重命名

代码语言:javascript
复制
gunzip GCA_019202795.1_ASM1920279v1_genomic.fna.gz
mv GCA_019202795.1_ASM1920279v1_genomic.fna query.fna
grep ">" query.fna | wc -l # 这个里有218 条序列
gunzip GCF_000001735.4_TAIR10.1_genomic.fna.gz
mv GCF_000001735.4_TAIR10.1_genomic.fna target.fna
grep ">" target.fna | wc -l ## 这个里有7条序列

minimap2的安装

直接使用conda安装 https://github.com/lh3/minimap2

代码语言:javascript
复制
conda install minimap2

比对

代码语言:javascript
复制
minimap2 -ax asm5 target.fna query.fna > arabidopsis_aln.paf

这个最终的比对结果有900多兆,自己的电脑R语言读取应该很吃力,下面的操作还是使用这个R包自带的数据吧

接下来是R语言里的操作

安装pafr包

代码语言:javascript
复制
install.packages("pafr")

加载需要用到的R包

代码语言:javascript
复制
library(pafr)
library(tidyverse)
library(ggplot2)

读取数据

代码语言:javascript
复制
fungi.paf.1<-read_paf("fungi.paf")
fungi.paf.1 %>% as.data.frame() %>% head()

fungi.paf.2<-read_paf("fungi.paf",include_tags = FALSE)
fungi.paf.2 %>% as.data.frame() %>% head()

共线性的点图

代码语言:javascript
复制
dotplot(fungi.paf.2)

image.png

指定染色体的共线性

代码语言:javascript
复制
plot_synteny(fungi.paf.2, 
             q_chrom="Q_chr3", 
             t_chrom="T_chr4", 
             centre=TRUE) +
  theme_bw()

image.png

这里有个问题好像是只能1对1,研究研究他的代码,看看能不能改成可以多对一

覆盖度

代码语言:javascript
复制
plot_coverage(fungi.paf.2) -> p1
plot_coverage(fungi.paf.2,fill='qname') -> p2
plot_coverage(fungi.paf.2,fill='qname')+
  scale_fill_brewer(palette = "Set1") -> p3

library(patchwork)
p1+
  p2+theme(legend.position = "none")+
  p3+theme(legend.position = "none")

image.png

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-03-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 小明的数据分析笔记本 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • pafr包的参考链接
  • 首先用minimap2比对两个基因组
  • minimap2的安装
  • 接下来是R语言里的操作
  • 共线性的点图
  • 覆盖度
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档