MCScanX 的使用
MCScanX 的安装与使用
wget http://chibba.pgml.uga.edu/mcscan2/MCScanX.zip
unzip MCScanX.zip -d ~/tools/
cd ~/tools/MCScanX
make
需要下载gc++ 来编译,另外需要下载java 来获得作图的支持
#64位编译会出现问题,需要在msa.h,dissect_multiple_alignment.h,
detect_colinear_tandem_arrays.h 上加上#include <unistd.h>
.gff 文件的准备
#在NCBI上下载的gff3 文件,经过如下面的处理得到符合要求的gff文件
grep "CDS" seqname | sed 's/;/\t/g' | awk '{OFS=FS="\t"}{print $1,$12,$4,$5}'| sed 's/Name=/''/g' > YP14.gff
#可以改变染色体的名称为YP14
blast 文件的准备(blast的输出结果为m8格式)
#种内与种间比对是不同的,建库的序列不同
makeblastdb -in YP14.proteins.fasta -dbtype prot -title all.blast -parse_seqids -hash_index -out all.blast
blastp -db all.blast -query target.proteins.fasta -out all.blast -outfmt 6 -evalue 1e-5
数据的生成
#将所有的蛋序列gff 文件用合并
cat 1.gff 2.gff >> all.gff
#将all.gff 文件与all.blast 文件放在同一个文件夹下面
MCScanX all
#会生成all.collinearity all.tandem 和all.html的文件夹
自带的程序作图
#dot_ploter (生成点图)
java dot_plotter -g all.gff -s all.collinearity -c dot.ctl -o dot.png
#dual_synteny_plotter(共线性)
java dual_synteny -g all.gff -s all.collinearity -c dual_synteny.ctl -o dual_synteny.png
dual_synteny.ctl
800 //plot width (in pixels)
800 //plot height (in pixels)
YP14 //chromosomes in the left column
P11G5 //chromosomes in the right column
#circle_plotter(共线性圈图)
java circle_plotter -g all.gff -s all.collinearity -c xircle.ctl -o circle.png
circle.ctl
800 //plot width and height (in pixels)
YP14,P11G5 //chromosomes in the circle
生成如下图:
MUMmer的安装与使用
MUMmer 的下载与安装
wget http://sourceforge.net/projects/mummer/files/mummer/3.23/MUMmer3.23.tar.gz
tar -xzvf MUMmer3.23.tar.gz -C ~/tools/
make check
make install
#查看INSTALL文档,安装MUMmer前先安装gnuplot 4 版本
cd gnuplot-4.6.6
./configure --prefix=/home/wei/tools/gnuplot
make
make install
#命令行gnuplot ,set terminal 看是否出现png 的选项
#否则安装依赖库 libcairo2-dev,libpango1.0-dev,libgd-dev
#出现Can not use 'defined(%hash)'
#解决 perl -i -pe 's/defined \(%/\(%' filepath
MUMmer 的基本使用
#帮助 nucmer -h
nucmer --maxmatch -c 65 -g 90 -p out YP14.fna P11G5.fna
--maxmatch 匹配的最多
-c 匹配的最小长度
-g 相邻的匹配之间的最大gap的阈值
-p 输出的文件前缀
#show-coords 将结果装换位列表格式的结果
show-coords -c -d -l -I 95 -L 10000 -r out.delta > out.show
-c 在输出结果中包含覆盖度信息
-d 在结果中包含比对的方向信息
-l 在输出结果中包含ref和query序列的长度信息
-I 匹配的一致性大于或等于该百分比,才会输出到结果中去
-L 匹配的序列长度大于或等于此值,才会输出到结果
-q 设定输出结果按query IDs和其coordinates排序
-r 设定输出的结果按照ref IDs和其coordinates排序
-T 输出结果为tab分割的表格格式,否则,会经过格式化,产生的结果更加易读
#mummerplot 作图
mummerplot -f -l -p out -s large -t png out.delta
-f 仅显示.delta格式比对结果文件中一对一最佳匹配的结果
-l 画对角线显示
-p 设定输出文件的前缀
-r 将ref 序列中的某个序列名,投在X轴上,查看比对情况
-q 将query 序列中的某个序列名,投在Y轴上,查看其比对情况
-s 设定输出图片的大小,可选值有small,medium,large
-S 将SNP 位点标记出来
-t 设定gnuplot 的title 设为png 输出png 格式的图片
输出的图片如下: