在生物資訊中,基因組共線性分析dotplot圖幾乎全部是用MUMmer或者LAST做的。相比對LAST,MUMmer生成的圖似乎更加美觀和詳細,last-plot會可能會省略一些過長的id,而mummerplot會全部寫出來。
- MUMmer的安裝
1.1 安裝MUMmer主程式前,需要先安裝gnuplot:
從gnuplot的官網http://www.gnuplot.info/ 連結到其sourceforge下載下傳頁。
注意:最新版的gnuplot v5.2.6在後續運作時與MUMmer4可能不太相容,會報如下錯誤:
“sample.gp” line 45: warning: this copy of gnuplot has no mouse support
set mouse format “%.0f” ^
“sample.gp” line 45: unexpected or unrecognized token
WARNING: Unable to run ‘/path/to/gnuplot-5.2.6/bin/gnuplot sample.gp’, Inappropriate ioctl for device
這裡下載下傳的穩定的老版本gnuplot v4.6.2,讀者也可以嘗試其它更高一些的老版本,歡迎将測試結果分享到讨論區。
mkdir gnuplot && cd gnuplot
wget https://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.2/gnuplot-4.6.2.tar.gz
tar -zxvf gnuplot-4.6.2.tar.gz
./configure --prefix=$PWD
make
make install
注意:如果有報錯,可以嘗試更新gcc版本
完成後,需要将生成的bin目錄加到環境變量中
export PATH=/path/to/gnuplot/gnuplot-4.6.2/bin:$PATH
1.2 再來安裝mummer:
mkdir MUMmer4.00b2 && cd MUMmer4.00b2
#MUMmer4.00b2是其安裝目錄
從MUMmer GitHub下載下傳最新版mummer-4.6.2beta2,并安裝:
wget https://github.com/mummer4/mummer/releases/download/v4.6.2beta2/mummer-4.6.2beta2.tar.gz
tar -zxvf mummer-4.0.0beta2.tar.gz
cd mummer-4.6.2beta2
./configure --prefix=$PWD
make
make install
mummer套件中其它程式還好,如果最難搞的mummerplot安裝完成,就明表明安裝OK。可以通過以下結果來驗證是否安裝完整。
- MUMmer的運作
建議将MUMmer的路徑寫到運作時的shell腳本中,當然也可以一次性寫到$HOME/.bashrc中
export PATH=/path/to/MUMmer4.00b2/mummer-4.0.0beta2/bin:$PATH
step1: run nucmer for alignment
nucmer --threads 32 --mum -D 5 -p
outpfix是輸出檔案字首
subject和query是想要比較的兩個序列檔案,fasta格式
step2: filter alignment result
delta-filter -i 85 -l 8000 -o 85 .delta -1 > .best_delta
其中-i指定最小的alignment相似性門檻值
-l,注意,這裡是字母小寫的L,指定最小的alignment長度
-o 和-r,-q相關,可以了解為alignment coverage
-1注意,這裡是數字1,指定是否進行一對一的比對,一個位置(subject或query上)隻找一個最佳的比對。特别是對大的基因組一定要加這個選項,否則會異常慢
具體的參數可以通過delta-filter -h參看到
step3: generate figure using mummerplot
mummerplot -p .best_delta -t postscript
采用上一步過濾後的結果.best_delta畫圖,這裡生成的是ps格式的圖,雖然-t可以指定png圖,但是結果顯示生成的png圖分辨率太低。
step4: convert ps format to png
/usr/bin/ps2pdf .ps .pdf
convert -density 300 .pdf .png
ps2pdf可以将ps格式的檔案轉pdf
convert是imagemagick包中的一個子程式,可以将pdf轉為png圖檔,而且高清晰