生物信息-McScan(Python-jcvi)共線性畫圖

比較基因組學中,共線性的分析的圖無疑是最漂亮的。

共線性分析可以很好地解釋進化關係和多倍化事件。

本文主要介紹的是唐老師的Python版McScan(jcvi工具包),這個包很強大,但是其功能在官網的說明並不詳細,在衆人的博客中也比較零散。

我剛使用這個包的時候(2017年)還很難安裝,需要預裝各種依賴,不過現在的同學們很幸福了,可以直接用pip一鍵安裝了。

軟件包鏈接:https://github.com/tanghaibao/jcvi

安裝過程很簡單:

pip install jcvi

pip install git+git://github.com/tanghaibao/jcvi.git

如果安裝不成功,再執行一次上述命令即可。

python 用conda安裝即可。

官方配圖如下:


 鄙人拙作如下:


本文其實並沒有想用常規的方法告訴同學們怎麼用,我只是想告訴同學們一鍵生成最終結果的辦法:

1. 兩兩物種之間的共線性分析和畫圖:

諸君只需要準備好下載好的兩個需要比對的基因組序列文件和註釋文件(species.gff),進行格式化:

#下載基因組相關數據

get-genome.pl

#格式化基因組序列文件

format_fa.pl

#格式化基因組註釋文件

format_gff.pl

#共線性畫圖

perl synteny-jcvi.shell.pl species1 species2

#統計共線塊的分佈情況

stat_block.pl

2. 多物種基因組序列比對,保守序列/區域畫圖(準備好lastz軟件,不需要準備註釋文件)

# 獲得物種兩兩比對結果

lastz-axt.sh reference species

# 獲得多序列比對結果

roast tree *sing.maf roast.maf

# 獲得各物種與reference的比對矩陣

cat roast.maf| awk 'BEGIN {OFS = "\t"} ; {if ($1~/a/){m++}}{if ($5 == "+") print $2, $3, $3 + $4, $2"-common_"m"\t0\t"$5; else print $2, $6 - $3 - $4, $6 - $3, $2"-common_"m"\t0\t"$5}' | grep -P "^\S" | grep -v score > mostcons.bed

grep Whear_chinese mostcons.bed | awk '{if ($3-$2 >= 2000){print }}' | perl -ne 'print "$1\n" if /(common_\d+)/' > Whear_chinese.2k.id

rm mostcons.bed.2k

for i in `cat Whear_chinese.2k.id`;do grep -P "$i\t" mostcons.bed >> mostcons.bed.2k  ;done

for i in `cut -f 1 mostcons.bed.2k | sort | uniq`;do grep $i mostcons.bed.2k > $i.bed ; done

sortBed -I mostcons.bed.2k > mostcons.bed.2k.sort

# 生成配置文件

perl anch.pl mostcons.bed.2k.sort

# 畫多序列共線性圖(如下,可以直觀看到倒位,缺失等重要信息,圖中註釋信息位置均可以進行調整)

python -m jcvi.graphics anchors seqids layout

3. 多物種基因共線性圖(準備好blastp軟件,需要gff註釋文件)

# blastp比對

# 獲取各物種與reference的RBH比對矩陣

# 生成配置文件(anchors文件由RBH矩陣替換)

perl anch.pl mostcons.bed.2k.sort

# 畫圖

python -m jcvi.graphics anchors seqids layout

本操作流程節約了各種配置編輯和試錯的時間和精力,增加了無註釋文件或者非編碼區(全基因組序列,而非僅基因區)的共線性分析。

注意事項:

1. 雖然可以conda一鍵安裝python,pip一鍵安裝jcvi,但是如果有依賴在嘗試兩次安裝jcvi後依然無法自動安裝,請手動安裝。

2. 注意所有文件在第一步的時候進行嚴格地格式化,請文件中不要出現特殊字符,儘量只有數據/字母/下劃線(原始文件只有兩個,基因組序列文件和註釋的gff文件)。

3. 如果要添加顏色,請在矩陣中加上註釋(紅色:r*;黃色:y*)

*. 有任何BUG,請及時與管理員聯繫。

腳本將陸續公佈於網站cospure.cn和github中。

腳本的寫作和解讀將陸續在微信公衆號中進行講解。

本博客主要用於文章和軟件的前期撰寫和測試,後期整理的詳細版請關注微信公衆號swxxfxxx。

以上,

abysw

原文地址:https://www.cnblogs.com/abysw/p/13832677.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章