一、MCSCAN

参考 :http://chibba.pgml.uga.edu/mcscan2/MCScanX.zip   http://chibba.pgml.uga.edu/mcscan2/#tm

安装 :unzip MCscanX.zip  && cd MCScanX   && make

安装报错:

报错解决:

这个错误的原因是,MCScanX 不支持64位系统。如果要在 64位上运行,需要修改下源代码。只需要给 msa.h, dissect_multiple_alignment.h, and detect_collinear_tandem_arrays.h 这三个文件 前面添加  #include <unistd.h>

1.1 准备 *.blast

/export/software/python-2.7.13/bin/python /home/fanjp/bin/gffStat.py -g A.hypogaea.Chrom.gene.gff3    ##提取最长转录本

getGene.pl gffStat.out/A.hypogaea.Chrom.gene.gff3.longest.gff3  A.hypogaea.genome.fasta >A.hypogaea.genome.fasta.cds                                                                                                                                        
/export/personal/zoum/bin/cds2aa.pl A.hypogaea.genome.fasta.cds >A.hypogaea.genome.fasta.pep

makeblastdb -dbtype prot -parse_seqids -in A.hypogaea.genome.fasta.pep  -out A.hypogaea.genome.fasta.pep    ##建库,物种间共线性

blastp -query A.hypogaea.genome.fasta.pep  -db A.hypogaea.genome.fasta.pep  -out Dr_An.blast -evalue 1e-5 -num_threads 16 -outfmt 6 -num_alignments 5  ##Dr_An.blast

1.2 准备 *.gff

perl -lane 'if($F[2]=~/mRNA/){/ID=(.*?)\;/;print join("\t",$F[0],$1,$F[3],$F[4])}' ../A.nigrocauda/A.nigrocauda.final.gff.longest.new.gff3  >Dr_An.gff                                 ##基于最长转录本提取gff, 获得Dr_An.gff

perl -lane 'if($F[2]=~/mRNA/){/ID=(.*?)\;/;print join("\t",$F[0],$1,$F[3],$F[4])}' ../D.rerio/D.rerio.gff  >>Dr_An.gff

1.3 共线性分析 

sort -nk1 A.hypogaea.genome.fasta.fai|perl -lane 'BEGIN{$a=0}{print join("\t","chr","-",$F[0],$F[0],"0",$F[1],"chr".$a);$a++}' >chr.txt 

/export/personal1/mengmh/1.software/MCScanX/MCScanX/MCScanX Dr_An   ## Dr_An.collinearity  Dr_An.html

perl  /share/erapool/personal/renpp/biosoft/circos/script/convert_McScanX_to_links.pl -i1 Dr_An.gff -i2 Dr_An.collinearity >links.txt   ##结果如下:

perl -lane 'print join("\t",@F,"color=".lc($F[3]))' links.txt                                                                                                                            ##增加第七列颜色

二、circos

参考 :http://circos.ca/software/download/    http://circos.ca/documentation/tutorials/    https://www.jianshu.com/p/17117766573a  http://blog.sina.com.cn/s/blog_485b444b0102whp4.html https://www.jianshu.com/p/e7ebb8f0100c

安装 :tar xf circos-0.69-9.tgz -C ./ &&  ./circos-0.69-9/bin/circos -h     &&  circos  -modules

/share/erapool/personal/renpp/biosoft/circos/circos-0.69-9/bin/circos -h

用法:

source /share/erapool/personal/renpp/.bashrc

circos -conf circos.conf

2.1 circos流程 和 主要的配置  (1.配置文件 2、输入文件)

2.2 基本的circos配置文件 变量

karyotype = data/karyotype/karyotype.human.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>>  ###colors.ucsc.conf 1500p
<<include etc/housekeeping.conf>>

2.3 karyotype:共有7列:chr  -  ID  LABEL  START  END  COLOR

perl -lane '{$a+=1;print join("\t","chr","-",$F[0],$F[0],"0",$F[1],"chr$a")}' ../0HWJHB.final_Chr.fasta.fai|head -24 >chr.txt

perl -lane '{$a+=1;print join("\t","chr","-",$F[0],$a,"0",$F[1],"chr$a")}' ../3D.rerio.fna.fai |less|head -25 >>chr.txt

karyotype = ./chr.txt
chromosomes_units                         = 2000000
chromosomes_display_default        = yes
chromosomes                                  = -ContigUN;
#chromosomes                                = hs1;hs2;hs3;-hs4;hs5:1-100;-hs6:50-);/hs[7-9]$/
#chromosomes_reverse                  = hs2;hs3;/hs[234]/
#chromosomes_order                     = hs1;hs3;hs2;^,hs5;hs4,$
#chromosomes_colors                    = hs1=red,hs2=orange,hs3=green,hs4=blue
#chromosomes_radius                    = hs1:0.5r;hs2:0.55r;hs3:0.6r
#chromosomes_scale                      = /hs[234]/=0.5rn

2.4 ideogram

<ideogram>

<spacing>
default                                   = 0.005r

<pairwise Chr01;Chr02>
spacing                                   = 4r
</pairwise>

</spacing>

#position configuration
radius                                     = 0.80r
thickness                                = 20p
fill                                            = yes
#fill_color                               = black
stroke_thickness                    = 3
stroke_color                           = dgrey

#label configuration
show_label                            = yes
label_font                              = default
label_radius                          = dims(ideogram,radius) + 0.065r
label_size                             = 30
label_parallel                        = yes

#band configuration
# show_bands                      = yes
# fill_bands                           = yes
# band_stroke_thickness     = 2
# band_stroke_color            = white
# band_transparency           = 0
</ideogram>

2.3 ticks

show_ticks                                         = yes
show_tick_labels                               = yes

<ticks>
radius                                                = dims(ideogram,radius_outer)
color                                                  = black
thickness                                           = 2p
multiplier                                           = 1e-6
format                                               = %d

<tick>
spacing                                             = 1u
size                                                   = 10p
color                                                 = lgrey
show_label                                       = no
</tick>

<tick>
spacing                                            = 5u
size                                                  = 15p
show_label                                      = yes
label_size                                        = 20p
label_offset                                     = 10p
format                                             = %d
</tick>

</ticks>

2.4 plots

<plots>

<plot>
type                                    = histogram
file                                      = ./chr1.txt.11
r0                                       = 0.70r
r1                                       = 0.75r
max                                   = 1
min                                    = 0
orientation                         = out
fill_color                            = blue ##line heatmap histogram
</plot>

<plot>
type                                  = heatmap
file                                    = ./chr1.txt.12
r0                                     = 0.60r
r1                                     = 0.65r
max                                 = 1
min                                  = 0
color = yellow
</plot>

<plot>
type                                = scatter ##scatter line heatmap
file                                  = ./chr1.txt.13
r0                                   = 0.50r
r1                                   = 0.55r
max                               = 1
min                                = 0
fill_color                         = black
stroke_color                   = black
</plot>

</plots>

2.5  links.conf

示例1:hs1 400 550 hs3 500 750 color=red    ##1、共有7列定义不同染色体links的染色

<links>
<link>
file                                  = ref/MCSCAN/Dr_An_links.txt
radius                             = 0.90r
bezier_radius                 = 0r
color                              = black_a4
thickness                       = 2
</link>
</links>

示例2:hs1 400 550 hs3 500 750      ##共有六列

<rules>

<rule>
condition                          = var(intrachr)  ##染色体内的 links 对不显示
show                                = no
</rule>

<rule>
condition                          = 1
color                                = var(chr2)    #2、所有links的颜色都是第二条染色体的颜色,也就是结束一端的颜色。如果写成color = var(chr2)那所有的线就是都是2号染色体的颜色了。前提的是:颜色的配置文件中要有自定义好的别名(如chr1 chr2 等),组型文件中至少有一个是染色体提用到别名 etc/colors.ucsc.conf   3、通过列表获得:https://www.jianshu.com/p/3fd9175abad0

flow                                 = continue
</rule>

<rule>
condition                          = between(hs1,hs2)    ###两个染色体间的 links 显示的染色
color                                = green
z                                      = 10
flow                                 = continue
</rule>

<rule>
condition                         = between(hs2,hs3)
color                                = blue
thickness                         = 4
z                                      = 15
</rule>

</rule>

condition支持的函数  :

1、value 获取指定字段的值,var返回值可以分成以下3类 字符串,数字,逻辑值

CHRn               var(chr1)var(chr2)                                 #字符串

STARTn          var(start1)var(start2)   

SIZEn              var(size1)var(size2)                                #数字

INTERCHR      var(interchr)   如果一个link连接的两个区域位于两条染色体上,返回值为1       #逻辑值

INTRACHR      var(intrachr)   如果一个link连接的两个区域位于同一条染色体上,返回值为1

2、between

condition = between(hs1, hs2)

http://circos.ca/documentation/tutorials/links/rules2/   https://www.jianshu.com/p/3fd9175abad0  ##links

5.MCScanX 与circos下载、安装、运用的更多相关文章

  1. Visual Studio for Mac Preview离线下载安装

    Visual Studio for Mac离线下载安装. 环境:OS X EI Caption 10.11.2 .NET Core SDK 1.1 需预先安装 .NET Core 1.1 SDK ma ...

  2. jdk1.8下载安装

    jdk8环境变量 jdk8图解安装 java8安装   1 2 3 4 5 6 7 分步阅读 JDK8 是JDK的最新版本,加入了很多新特性,如果我们要使用,需要下载安装: JDK8在windows ...

  3. Mac下载安装Android Studio教程

    今天把公司闲置的一台Mac-mini重装了下系统感觉用着速度还不错,平时上班用的机器USB有些问题,所以打算用这台Mac.以往开发用Intellij Idea就够用,但是这次项目引用的jar包太多,遭 ...

  4. mac版 android破解软件下载安装

    1 apktool下载安装 下载地址https://code.google.com/p/android-apktool/ [1].下载apktool.jar — 解压 [2].下载Mac上的辅助工具a ...

  5. 不通过App Store实现ios应用分发下载安装

    最近公司的项目准备着手宣传工作了,宣传手册上要印制App的下载地址二维码,但是客户端应用还未上线,需要一种临时的方案解决应用分发下载问题,通常ios应用必须通过苹果应用商店才能下载安装,但是也可以看到 ...

  6. ERWin 7.2下载安装及注册机

    ERWin 7.2下载安装及注册机   ERWin 7.2 下载地址: ftp://ftp.ca.com/CAproducts/erwin/ServicePacks/AFEDM72-b1644.exe ...

  7. cocoapod的下载安装解释

    本文不提供cocoapod的下载安装的流程,因为那些只要百度一下就有的东西,而是对里面的代码进行解释,希望对iOS小白安装cocoapod有帮助: 一.cocoapod是什么? 开发过程中,我们会用到 ...

  8. 配置ActiveX控件在网页中下载安装

    先检查客户端浏览器是否安装了ActiveX控件,如果没有安装ActiveX,就需要先给浏览器提示下载并允许安装.否则就直接使用该ActiveX控件.我们可以使用CodeBase来满足我们的要求:下面是 ...

  9. Xamarin Anroid开发教程之下载安装Xamarin

    Xamarin Anroid开发教程之下载安装Xamarin Xamarin在过去安装时都会检查系统中是否安装了前面所提供的内容.而后来,Xamarin安装时只提供安装步骤,其它内容都需要读者自己下载 ...

随机推荐

  1. LeetCode--146--LRU缓存机制(python)

    运用你所掌握的数据结构,设计和实现一个  LRU (最近最少使用) 缓存机制.它应该支持以下操作: 获取数据 get 和 写入数据 put . 获取数据 get(key) - 如果密钥 (key) 存 ...

  2. SpringBoot路径映射

    当然这个功能并非是springboot特有的,只是springboot提供了更简便的方法以供使用.     传统情况下我们跳转一个动态页面且并没有数据,也需要在controller中写一个跳转的con ...

  3. vim插件cscope使用方法

    一.安装cscope 安装方式比较多样,可以在各自linux软件管理工具中安装,也可以去官网下载安装. sudo apt-get install cscope 二.插件安装 这里选择的是Vundle来 ...

  4. Spring read-only="true" 只读事务的一些概念

    概念:从这一点设置的时间点开始(时间点a)到这个事务结束的过程中,其他事务所提交的数据,该事务将看不见!(查询中不会出现别人在时间点a之后提交的数据) 应用场合: 如果你一次执行单条查询语句,则没有必 ...

  5. 【WINDOWS】设置路由表实现有线内网,无线外网

    前提!!! 需要有线无线双网卡

  6. BZOJ 4939: [Ynoi2016]掉进兔子洞(莫队+bitset)

    传送门 解题思路 刚开始想到了莫队+\(bitset\)去维护信息,结果发现空间不太够..试了各种奇技淫巧都\(MLE\),最后\(\%\)了发题解发现似乎可以分段做..这道题做法具体来说就是开\(3 ...

  7. 3D Computer Grapihcs Using OpenGL - 12 Rotation Matrix

    为了证明我们上节渲染出来的是一个立方体而不是一个平面,我们决定将它旋转一定角度,这样我们就需要一个旋转矩阵(也属于ModelTransformMatrix的一部分) 上一节我们的ModelTransf ...

  8. UIWebView 禁止检测链接弹出UIActionSheet

    解决方法一: 添加以下代码禁止检测类型 webView.dataDetectorTypes = UIDataDetectorTypeNone; 解决方法二: - (void)webViewDidFin ...

  9. python3下multiprocessing、threading和gevent性能对比----暨进程池、线程池和协程池性能对比

    python3下multiprocessing.threading和gevent性能对比----暨进程池.线程池和协程池性能对比   标签: python3 / 线程池 / multiprocessi ...

  10. 四种方法给Vmware虚拟机清理瘦身

    随着VMware虚拟机使用时间的增长,其所占用的空间也越来越大,本文来说说怎么给VMware虚拟机占用的空间进行瘦身. **方法一:VMware自带的清理磁盘 **这个方法是VMware自带,具有普适 ...