刘总的项目历经千辛万苦终于要开始了,因为测了一个基因组,当然不可避免的要做一个Circos图展现基因组的一些信息。今我就来记录一下Circos图绘制的方法,具体原理细节老规矩不介绍,脚本不外传,方法仅供参考。让我们快来开始吧,快来开始吧。
简单看一下我们想要的Circos图长啥样:
大概就这样,每一圈代表一种信息。
现在就开始我们自己的图片绘制吧。
首先准备输入文件
xxx.cds
xxx.gff
xxx.fa
先做最内圈的共线性,用jcvi做
#只截取gff中大片段的LG信息(组装的时候还有很多contig,影响画图)
grep "^LG" Fsr.genome.gff > f.gff
#将gff转为bed格式
python -m jcvi.formats.gff bed --type=mRNA f.gff -o f.bed
#鉴定共线性区块(f.cds f.bed在当前目录下)
python -m jcvi.compara.catalog ortholog f f --no_strip_names
#得到我们需要的输出文件 f.f.anchors f.bed
之后我们就该做circos了,目前打算绘制基因个数,重复序列含量,GC含量,就这些吧,需要再添加好了。
具体的步骤如下:(因为一些原因具体代码不方便透露,有需要私聊哈,视情况而定)
#计算染色体长度
#生成染色体文件 7列
#生成窗口文件, 窗口大小50Kb
#计算每个窗口平均GC含量
#计算每个窗口基因条数
#计算每个窗口重复序列含量
#共线性模块鉴定
所有的Circos输入文件就准备好了,除了输入呢,还有几个配置文件,根据需求和其他教程自己配置哈,这里不聊了。
最后运行Circos
circos -conf f.conf
要得到一个漂亮的图还是需要不断调试的。