0 Comments

circos绘图ideogram.conf文件的配置

发布于:2013-09-12  |   作者:admin  |   已聚集:人围观

  ideogram在基因组绘图中往往表示的就是染色体,在大多数情况下,ideogram是配置文件中重要的部分,也是相对参数较多的circos配置文件。主要内容包括染色体的半径、宽度、颜色,染色体排列方式以及它们之间的间隔距离等。

  1、参数的含义

  首先写一个范例来说明各个参数之间的含义,#后面为注释。

<ideogram>
<spacing> #此标签对用于放置默认的染色体之间的间距。
default = 0.005r  #染色体之间的间距
</spacing>
show_bands = yes  #必须有bands信息才能设置yes(显示)
fill_bands = yes #是否填充
band_transparency = 4 #透明度
radius           = 0.90r #绘制染色体的半径
thickness        = 20p #图形线条的粗细
fill             = yes #是否填充
stroke_color     = dgrey #染色体边线颜色
stroke_thickness = 2p #边线的宽度
show_label       = yes #是否显示标注(染色体的名称)
label_font       = default  #标记(染色体的名称)字体在etc/fonts.conf中查看
label_radius     = 1r + 75p #标记(染色体的名称)显示的位置——染色体圆弧外75p以内的位置
label_size       = 30 #字体大小
label_parallel   = yes #是否(与描述的区域的切线)平行
</ideogram>

  2、染色体显示与排序

 

1)染色体默认显示:chromsomes_display_default=yes  #不用设置,系统默认,除非你想让染色体默认不显示

2)选择部分染色体显示:chromosome=hs1;hs2;hs3;hs4

3)选择部分染色体不现实(filter):chromosome=hs1;hs2;hs3;hs4

4)染色体显示排序:chromosomes_order = hs2,hs4,hs3,hs1   对默认的排序方式重新排列

5)将两条染色体隔开:chromosomes_order = hs2,-,-,hs3   其他染色体按照默认方式排列

6)将指定染色体放在首位(^):chromosomes_order = ^,hs5  用休止符号指定

7)指定染色体放在末尾($):chromosomes_order = hs5,$  用美元符号指定

8)分组指定特殊位置:chromosomes_order = hs3,hs2|,hs8,hs1    其他染色体默认顺序排列,但是hs2跟在hs3后排列,hs1跟在hs1后排列,最终的顺序     则为 4、5、3、2、6、7、8、1

9)选择一条染色体的部分显示:chromosomes = ...;ID:START-END;...    

  chromosomes_units = 1000000 #定义染色体作图的时的单位,也做u,即1u=1000000bp
  chromosomes = hs1:0-100;hs2:50-150;hs3:50-100;hs4;hs5;hs6;hs7;hs8  #相当于hs1只显示0-100单位之间的bases,hs2 显示50-150单位之间的base
  chromosomes = hs1;hs2;hs3;hs4;hs5;hs6;hs7;hs8
  chromosomes_breaks = -hs1:100-200;-hs2:0-50;-hs2:150;   #hs1 100u-200u之间不显示,hs2 0-50u之间不显示;hs2 150u之后的区域不现实;表示到末尾。

 3、Ideogram显示之间的间隔

 

  1)<spacing>标签对之间放间隔信息,可以使用ur作为单位。其中<spacing>default=1u</spacing>用于设置所有ideograms之间的默认值。如果单独对特定的一对或者几个ideograms设置则可以在spacing标签之间使用<pairwise  hs1;hs2>标签指定spacing信息。例如:

<ideogram>  <spacing>
 default = 10u #默认值
    <pairwise hs1;hs2> #指定hs1和hs2
    spacing = 0.25r  #设置hs1和hs2之间的spacing信息为0.25r
    </pairwise> #标签成对出现
    <pairwise hs3>  #<spacing>中可以放多个<pairwise></pairwise>标签对,以便于个性化设置。
    spacing = 15u
    </pairwise>
  </spacing>  </ideogram>

  2)axis_break——轴断

  在<spacing>标签对之间break=2u表示ideogram的轴断(axis_break轴断用于表示染色体不全,在轴断出有部分染色体未显示)。轴断可以在染色体内部或者两段。axis_break_style=n用于设置轴断的样式。Axis_break_style的值由<break_style n></break_style>标签对定义。axis_break_at_edge=yes 表示在ideogram没有展示染色体的首尾的时候,在首尾使用axis_break

 

<ideogram>  <spacing>
  default = 10u
  break   = 2u #定义
  axis_break   = yes
  axis_break_style  = 2  #选择风格
  axis_break_at_edge = yes  #是否在首尾显示axis_break
  <break_style 1>  #定义axis_break风格1,这里并没有调用这种风格
    stroke_color = black
    fill_color   = blue
    thickness    = 0.25r
    stroke_thickness = 2
  </break_style>
  <break_style 2>  #定义axis_break风格2,被axis_break_style  = 2  调用
    stroke_color     = black
    stroke_thickness = 3
    thickness    = 1.5r
  </break_style></spacing></ideogram>

 

3)为染色体单独命名(设置tag

  由于部分染色体可能会只取部分显示,或者一条染色体取出两部分显示。重新命名(tag)更容易操作,例如对染色体排序的时候则可以直接使用tag排序,无需写出全部内容。

  方法:在设置染色体显示的时候,在染色体名称后面,定义显示部分的前面用”[]”设置tags。默认使用tag作为label显示,不用单独设置label_with_tag=yes。设置label_with_tag=no即可关闭。

chromosomes = hs1[a]:0-50;hs1[b]:150-);hs2[c]:0-50;hs2[d]:150-);hs3[e]  #定义显示的区段,并给每个ideograms设置tag。
label_with_tag = no

4)ideograms的半径

设置统一默认方式:radius=0.85r (在<ideogram>标签下)

也可以单独对某个或者多个ideograms设置半径,在染色体名称(或者tags)后加半径大小,用冒号隔开。

chromosomes_radius = hs1:0.5r;hs2:0.55r;hs3:0.6r;hs4:0.65r;hs5:0.7r;hs6:0.75r;hs7:0.8r;hs8:0.85r;hs9:0.9r;hs10:0.95r

5)label设置

label即在ideogram(染色体)上的标注,区分染色体。Label设置的字体label_font必须是在字体文件中已经定义的(字体文件用<include colors_fonts_patterns.conf>>调用)。

 *label_radius= dims(ideogram,radius_outer) + 50p  表示label的半径,其中ideogram表示以ideogram的半径为参考;radius_outer表示在ideograms的外圈位置;+50bp表示在radius_outer的基础上外延50bpradius_inner表示内径。(邓飞龙的circos学习笔记,博客地址www.dengfeilong.com)

*label_radius =(dims(ideogram,radius_outer)+dims(ideogram,radius_inner))/2 #内外半径的中间位置,即放在ideogram上。

* label_radius = dims(image,radius) - 50p image #表示以整天图片为参考。

 

<ideogram>
show_label     = yes #是否显示label
label_with_tag = yes #是否使用tag作为label
label_font     = light #label字体
label_radius   = dims(ideogram,outer_radius) + 0.05r #label的半径,即定义label显示的位置,做特别说明
label_center   = yes #所有label集中在定义的半径内。
label_size     = 48p  #字体大小
label_color    = grey  #颜色
label_parallel = yes  #label是否与圆的切线平行
label_case     = upper #大写字母
label_format   = eval(sprintf("chr%s",var(label))) #对label格式化,在数据中即可完成。
...
</ideogram>

6)临时设置(第一个ideogram位置和默认放置顺序)

  第一个的位置在图片设置文件中已经定义,也可以对其定义。系统设置的各个位置如有图所示。

angle_offset=90,这可设置第一个ideogram的位置。

而顺时针和逆时针排列方式也可以定义:angle_orientation = counterclockwise(逆时针)

      *都在<image>标签对里面。如果是调用image文件,可以用*来重置文件内的参数。

  博主注:时间匆忙,内容都是从circos学习笔记直接复制而来,排版和整体内容比较混乱,其中必定有不少错误,请各位谅解指正。

circos教程系列文章推荐:

1、circos安装与调试

2、circos配置文件说明

3、circos命令行常用指令与参数说明

4、circos绘图ideogram.conf配置文件详解(核心内容)

未完待续......

标签:circos(6)
    输入验证码:
点击我更换验证码