如何使用R语言包circlize可视化展示blast双序列比对结果

技术如何使用R语言包circlize可视化展示blast双序列比对结果如何使用R语言包circlize可视化展示blast双序列比对结果,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题

如何用R语言包circlize实现blast双序列比对结果的可视化显示,针对这个问题,本文详细介绍了相应的分析和解答,希望能帮助更多想要解决这个问题的朋友找到更简单易行的方法。

Circlize是一个功能强大的包,用R语言画圆图非常方便。

今天,本文记录了用circlize画一个圆图来显示blast双序列比对结果的代码。

关于植物线粒体基因组的文章通常分析细胞器和基因组之间的基因转移,基本的分析方法是blast比较。可视化可以用这个圆形图来完成。

首先,使用blast构建数据库比较。

makebstdb-inmt . fasta-dbtypenucl-out mt

blastn-querycp . fasta-dbmt-outmt6 output . txt

然后准备好数据,画出最外面的圆来显示这两个序列。

df-data.frame(chr=c(rep('叶绿体',2),rep('线粒体',2)),

x=c(1,131478,1,444567),

y=c(0,1,0,1))

df

chrxy

1叶绿体10

2叶绿体1314781

3线粒体10

4线粒体4445671

然后读取blast的输出。

df1-read.csv('output6.txt ',stringsAsFactors=F,header=F,sep='\t ')

用于映射的代码

库(循环)

图书馆

库(复杂热图)

col-rcolorbrewr : brewer . pal(6,‘配对’)

circos.par('start.degree'=130)

circos . initialize(factors=df $ chr,x=df$x)

circos . trackplotRegion(factors=df $ chr,y=df$y,

panel.fun=function(x,y){ 0

circos.axis()

},轨道.高度=0.1)

highlight.sector(sector.index = "chloroplast",col=col[1])
highlight.sector(sector.index = "mitochondrial",col=col[2])
circos.text(x=70000,y=0.5,
            labels = "chloroplast",
            sector.index = "chloroplast")
circos.text(x=220000,y=0.5,
            labels = "mitochondrial",
            sector.index = "mitochondrial",
            facing = "outside")
col_fun = colorRamp2(c(70,90,100),
                     c("green", "yellow", "red"))
for (i in 1:13){
  x<-sort(c(df1[i,8],df1[i,7]))
  y<-sort(c(df1[i,10],df1[i,9]))
  z<-df1[i,3]
  circos.link("chloroplast",x,"mitochondrial",y,
              col=add_transparency(col_fun(z)))
}
circos.clear()
lgd_links = Legend(at = c(70, 80, 90, 100), 
                   col_fun = col_fun, 
                   title_position = "topleft",
                   title = "identity(%)")
lgd_list_vertical = packLegend(lgd_links)

draw(lgd_list_vertical, x = unit(10, "mm"), 
     y = unit(10, "mm"), just = c("left", "bottom"))

 

如何使用R语言包circlize可视化展示blast双序列比对结果
image.png

 新学到的两个知识点

调整整体的角度

circos.par("start.degree" = 130)

 

调整用来表示染色体的外圈粗细

circos.trackPlotRegion(factors = df$chr,y=df$y,
                       panel.fun = function(x,y){
                         circos.axis()
                       },track.height = 0.1)

 

画图的时候可以加一个track.height参数

 遇到的问题是

调整外圈的刻度,现在展示的有点多,我想增大间隔,减少展示的数字,暂时不知道如何实现。

关于如何使用R语言包circlize可视化展示blast双序列比对结果问题的解答就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/78660.html

(0)

相关推荐

  • 设计模式-观察者模式(c++)

    技术设计模式-观察者模式(c++) 设计模式-观察者模式(c++)当股票的价格上涨或下降5%时,会通知持有该股票的股民,当股民听到价格上涨的消息时会买股票,当价格下降时会大哭一场。
    类图#include

    礼包 2021年11月20日
  • MongoDB和MySQL的区别有哪些

    技术MongoDB和MySQL的区别有哪些这篇文章主要讲解了“MongoDB和MySQL的区别有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MongoDB和MySQ

    攻略 2021年12月2日
  • C#如何实现Winform自动升级程序

    技术C#如何实现Winform自动升级程序这篇文章给大家分享的是有关C#如何实现Winform自动升级程序的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。开发第三方工具包新建一个WinForm项

    攻略 2021年12月1日
  • mshflexgrid数据表格怎样绑定数据库

    技术mshflexgrid数据表格怎样绑定数据库这篇文章将为大家详细讲解有关mshflexgrid数据表格怎样绑定数据库,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。ms

    攻略 2021年12月1日
  • 电脑音响没声音怎么弄,台式电脑的音响没声音怎么办

    技术电脑音响没声音怎么弄,台式电脑的音响没声音怎么办情况一:右击桌面“我的电脑”--属性--硬件--设置管理器--声音视频和游戏控制器--这个项下面如果没有AC97或High Definition或其他长串的英文,或者存

    生活 2021年10月22日
  • puppet中nagios客户端模块的示例分析

    技术puppet中nagios客户端模块的示例分析这篇文章主要为大家展示了“puppet中nagios客户端模块的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“pup

    攻略 2021年10月21日