從零開始學(xué)Circos繪制圈圖(一)

一般基因組文章都會有下面這種酷炫圖,用來描述基因組的基因密度分布,轉(zhuǎn)座子的密度分布,和其他物種或者多倍體的多套染色體間的共線性關(guān)系,以及其他各種你只要測序就能加上的信息,比如說你要是測了ATAC-seq,加上全基因組開放狀態(tài),要是測了多個組織,多個時期的RNA-seq,那就加上熱圖展現(xiàn)這種變化關(guān)系。

circos繪制基因組

當(dāng)然除了基因組文章,其他類型的文章也可以考慮這種圖。接下來我將會寫一些列教程(可能有視頻),通過教別人學(xué)Circos的方式來自學(xué)Circos。

環(huán)境配置

建議在Linux環(huán)境下配置Circos,之后只要用conda就能配置好分析環(huán)境

# 安裝
## circos
conda create -c bioconda -n circos circos

測試軟件安裝結(jié)果

# 測試circos
conda activate circos
# 確認(rèn)安裝
circos -V
# 顯示如下
# circos | v 0.69-8 | 15 Jun 2019 | Perl 5.026002

可以從http://circos.ca/software/download/下載官方的教程文件,分別是

處理過程

Circos依賴于一些列的配置文件,用來定義復(fù)雜圖形的各個部分,最終加工成圖形。

因此,用Circos畫圖是一個不斷增添內(nèi)容的過程,你要不斷根據(jù)輸出結(jié)果來調(diào)整輸入?yún)?shù)。

并且整個分析中,你還要擁有過關(guān)的數(shù)據(jù)預(yù)處理的能力,這是因為Circos不是數(shù)據(jù)處理工具,它只是展示你已有的數(shù)據(jù)。

處理過程

快速開始

不管怎么樣,先快速繪制出一個Circos圖再說。

果子老師說過,我們不是先成為了老司機(jī)才開車,而是開車多了才成為了老司機(jī)。

第一步,先新建一個文件夾,用于存放本次分析的所有數(shù)據(jù)和配置文件

mkdir -p my_first_circos && cd my_first_circos

然后用vim karyotype.tair10.txt編輯文本,新增如下內(nèi)容

chr - chr1 chr1 0 30427617 black
chr - chr2 chr2 0 19698289 black
chr - chr3 chr3 0 23459830 black
chr - chr4 chr4 0 18585056 black
chr - chr5 chr5 0 26975502 black

之后創(chuàng)建一個circos.conf文件,用于增加各類配置參數(shù)

touch circos.conf

vim circos.conf,增加我們的第一條記錄,染色體信息

karyotype = karyotype.tair10.txt

然而要想真正的出圖,還需要增加至少以下配置語句才行

<ideogram>
<spacing>
default = 0.005r
</spacing>
radius           = 0.90r
thickness        = 20p
fill             = yes
stroke_color     = dgrey
stroke_thickness = 2p
</ideogram>

<image>
<<include etc/image.conf>>
</image>

<<include etc/colors_fonts_patterns.conf>>
<<include etc/housekeeping.conf>>

在當(dāng)前路徑下運(yùn)行circos -conf circos.conf, 最終效果圖如下

第一張圖

雖然圖比較丑,但是至少我們成功運(yùn)行了人生第一次的circos, 這就相當(dāng)于買了一套毛坯房,后面要做的事情就是不斷裝修。

比如說,我們至少可以讓不同染色體擁有不同的顏色,修改之前的karyotype.tair10.txt中的最后一列

chr - chr1 chr1 0 30427617 chr1
chr - chr2 chr2 0 19698289 chr2
chr - chr3 chr3 0 23459830 chr3
chr - chr4 chr4 0 18585056 chr4
chr - chr5 chr5 0 26975502 chr5

在當(dāng)前路徑下運(yùn)行circos -conf circos.conf, 最終效果圖如下

1564117790558

這就引出了第一個知識點,配色。

為了實現(xiàn)配色,需要circos.conf文件了有一個和配色有關(guān)的語句

<<include etc/colors_fonts_patterns.conf>>

這里<<>>表示通過相對路徑的方式加載另外一個配置文件,它的實際路徑是和circos所在目錄同級的etc,可用下面語句看到colors_fonts_patterns.conf的內(nèi)容

circos_path=$(dirname `which circos`)
less ${circos_path%bin}/etc/colors_fonts_patterns.conf

你會發(fā)現(xiàn),這個文件里還嵌套其他的配置文件。最終通過層層排查,你才知道etc/colors.ucsc.conf才是實際定義我們填寫的顏色名的文件,而顏色的定義如下:

chr1  = 153,102,0
chr2  = 102,102,0
chr3  = 153,153,30
chr4  = 204,0,0
chr5  = 255,0,0

還有一個問題,為什么這里用的是兩個尖括號<<,而不是一個尖括號<呢?這是因為<已經(jīng)被用于分隔不同的語句塊,如下語句就表示etc/image.conf里的配置信息是用來調(diào)整和image有關(guān)的配置,而不是去調(diào)整ideogram的配置。

<image>
<<include etc/image.conf>>
</image>

以上是快速開始部分,后續(xù)將會在此基礎(chǔ)上,做出發(fā)表級別的圖。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、Python簡介和環(huán)境搭建以及pip的安裝 4課時實驗課主要內(nèi)容 【Python簡介】: Python 是一個...
    _小老虎_閱讀 6,319評論 0 10
  • circos 是一款perl 語言開發(fā)的畫圖軟件,提供了染色體相關(guān)數(shù)據(jù)的一種可視化方式。其制作的圖表精美,被科研工...
    BeautifulSoulpy閱讀 6,130評論 1 9
  • 劉小澤上篇寫于18.10.3 ,中篇寫于18.10.4,下篇寫于18.10.6學(xué)習(xí)障礙的規(guī)律往往是:不是因為它多難...
    劉小澤閱讀 3,055評論 3 13
  • circos是用來展示數(shù)據(jù)的繪圖工具,其數(shù)據(jù)展示方式主要通過配置文件來決定。不同的展示方式可通過不同的配置文件來進(jìn)...
    井底蛙蛙呱呱呱閱讀 12,728評論 2 23
  • 歡迎關(guān)注天下博客:http://blog.genesino.com/2012/04/circos-usage/Ci...
    生信寶典閱讀 979評論 0 5

友情鏈接更多精彩內(nèi)容