circos可视化手册

circos 可视化手册-tile 篇

2018-05-09  本文已影响12人  生信修炼手册

tile用来展示基因组上区域的分布,和之前介绍过的highlight不同,这些区域在图中并不是位于同一层的。为了避免不同区域之间的重叠,tile会将有重叠的区域分布在不同的层,结合图片来理解一下这个概念。示例图片如下


染色体之外的部分,就是tile了。图上共有5圈tile。可以看到,每个tile位于一个圆环区域内,其中的基本单位是一个个的矩形方块,我们也称为tile; 不同的矩形方块不会有重叠,而是堆积成好几层。这里的每一层,我们称为layer

配置文件的写法如下:

首先看下file定义的文件格式,和之前介绍过的scatter, line, histograms有所区别,每一行是一个区间,并没有value

对于配置文件中的其他属性,可以分成两部分

1. 位置相关属性

决定位置的有以下几个属性:

  1. r0

  2. r1

  3. orientation

  4. margin

  5. padding

  6. layer

  7. layer_overflow

  8. layer_overflow_color

r0r1定义圆环的内径和外径,这两个参数在之前的文章中就介绍过了,就不详细展开了。

margin定义了外边距,用于判断两个tile之间是否有重叠

file文件中定义了每个区间的startend,在判断两个区间是否重叠时,首先在原来区间的基础上,添加上margin,  变成了[start + margin,  end + margin], 如果转换后的区间存在重叠,就认为两个原始区间有重叠,需要位于不同的layer

padding定义了内边距,用于指定不同layer之间的间隔,示意图如下

orientationtile中有了一个新的取值,叫做center, 代表的是r0r1之间的中间位置。这个参数的作用就是表明不同层的layer如何摆放,示意图如下

layer参数指定layer的个数,layer = 5表示最多可以有5个layer;

layer_overflow参数控制超出个数的layer如何显示;layer_overflow_color指定超出个数的layer的填充色

layer_overflow = hide 表示超出的部分不显示

layer_overflow = grow 表示超出的部分继续显示,此时layer的个数会增加,示意图如下


layer_overflow = collapse表示超出的部分不用新的layer来显示,而是堆积在已有的layer上,此时layer的个数不会增加,示意图如下

2. 外观相关属性

包括以下4个属性:

  1. thickness

  2. color

  3. stroke_thickness

  4. stroke_color

外观的属性都很好理解,stroke_thicknessstroke_color分别控制边框的粗细和颜色,thickness控制tile的高度,color控制tile的填充色。

需要掌握的一点是rules的写法,示例如下

scatter等图表类型中,通过var(value)定义不同的条件,但是tile中并没有value的概念,只有size的概念,size指的是每个区间的宽度。在tile中,通过var(size)来定义不同的条件。

上面示例中的color 属性的学法也是值得学习的,remap_round函数实现了一个线性变换,将[10000, 150000]映射为[0, 4], 将size的值映射为0到4之间的一个整数;qw(lgrey grey dgrey vdgrey black)定义了一个数组,数组中共有4个元素,对应4种不同的颜色根据size的大小,转换为不同的下标,从数组中根据下标得到不同的颜色。

上一篇 下一篇

猜你喜欢

热点阅读