circos 主要用于展示染色體上的相關(guān)數(shù)據(jù),根據(jù)在染色上的位置進(jìn)行不同方式的可視化。
首先我們需要一個染色體的位置文件藐鹤。在circos
中致燥,染色體的位置保存在一個文件當(dāng)中登疗,通過karyotype
參數(shù)進(jìn)行設(shè)置,比如
染色體的位置保存在文件karyotype.human.txt
中嫌蚤,部分內(nèi)容如下:
采用\t
分隔辐益,共7列內(nèi)容。前兩列內(nèi)容是規(guī)定的脱吱,都是chr\t-
,表示這部分內(nèi)容是定義染色體相關(guān)信息的智政,第3列是染色體的ID, ID必須是唯一的,用于區(qū)分不同的染色體箱蝠,第四列代表染色體的名字续捂,這個名字會顯示在最終生成的圖片中;第五列和第六列分別代表起始位置和終止位置宦搬,這里的長度都是染色體的總長度牙瓢,最后一列代表的是染色體的顏色,只不過采用了chr
前綴來表示顏色间校,注意不要和染色體的ID和name 搞混淆了矾克。
在circos
中,內(nèi)置了許多的顏色撇簿,相關(guān)的配置保存在軟件安裝目錄的etc/colors.conf
文件中聂渊,其中etc/colors.ucsc.conf
文件中采用RGB標(biāo)準(zhǔn),定義了chr的各種顏色值四瘫。
從這里也能夠看出汉嗽,上面的`karyotype.human.txt``文件中抬驴,顏色是如何通過最后一列的內(nèi)容定義的等舔。
染色體的基本參數(shù)在ideogram
中進(jìn)行定義。所有的參數(shù)可以分成以下3大類別
染色體的位置
染色體的顏色
染色體的標(biāo)簽
染色體的位置
circos
提供了一個圓形的整體布局狡忙,用于展示染色體的數(shù)據(jù)洗做,每條染色體可以看做圓上的一段弧弓叛。通過染色體到圓心的距離來定義染色體的位置。具體的就是通過radius
參數(shù)進(jìn)行定義诚纸。
在circos
中撰筷,關(guān)于這個參數(shù)的值,提供了兩種定義的方式畦徘;
絕對值定義
絕對值的是通過像素定義毕籽,對應(yīng)的后綴為p,代表pixels抬闯。比如radius ?= 1000p
相對值定義
相對值對應(yīng)的后綴為r
,代表relative的意思。在etc/image.generic.conf
文件中关筒,定義了參照的radius
radius of inscribed circle in image
radius ? ? ? ? = 1500p
所以我們在配置文件中定義的radius ?= 0.80r
溶握, 實際等于0.8 * 1500 = 1200 像素。
染色體之間的間距通過spacing
這個block 進(jìn)行定義蒸播,default
參數(shù)設(shè)置所有染色體之間的默認(rèn)距離
如果你希望改變某兩條染色體之間的距離睡榆,可以通過pairwise
這個block, 用法如下
通過染色體的ID 指定具體的兩條染色體,之間用;
分隔袍榆,然后通過spacing
參數(shù)進(jìn)行定義它們之間的距離胀屿。
需要注意的是,這里采用的相對值的定義方法蜡塌,上面例子中的 20r
代表的是相對default是20倍的距離碉纳,所以使用相對值時,一定要理解相對的參照是哪一個馏艾。
染色體的顏色
通過thickness
定義染色體的寬度,單位和radius
類似奴愉,有r
和p
兩種琅摩,通常情況下我們使用p
,更加方便。比如thickness = 20p
锭硼。
對于染色體的顯示房资,有以下兩種方式
線段模式
這個模式是默認(rèn)模式。在該模式下檀头,染色體就當(dāng)做一條線段轰异,顏色采用karyotype
中的最后一列。矩形模式
在該模式下暑始,每條染色體被當(dāng)做一個可以填充的矩形搭独,所以會有邊框和填充兩部分構(gòu)成。
stroke_thickness
和 stroke_color
定義邊框?qū)挾群皖伾染怠H绻M刑畛渖栏危枰O(shè)置fill=yes
, 此時會用karyotype
中的最后一列定義的顏色填充這個矩形。
染色體的標(biāo)簽
在karyotype
中嗤朴,我們定義了染色體的名字配椭,也叫做label
, 關(guān)于label 有對應(yīng)的一系列參數(shù),調(diào)整它的顯示雹姊。
默認(rèn)情況下股缸,這個名字并不會顯示在圖上;可以通過show_label
進(jìn)行顯示吱雏,比如show_label = yes
敦姻。
label 通過文字的形式展現(xiàn)在圖上瘾境,label_font
設(shè)置字體,label_radius
設(shè)置位置替劈,label_size
設(shè)置大小寄雀, label_parallel
設(shè)置label的方向,yes
代表和染色體方向平行陨献,no
代表和染色體方向垂直盒犹。
一個完整的ideogram
例子如下: