circos 可视化手册-tile 篇

欢迎关注微信公众号《生信修炼手册》!

tile用来展示基因组上区域的分布,和之前介绍过的highlight不同的是,这些区域在图中并不是位于同一层的。为了避免不同区间之间的重叠,tile会将有重叠的区域分布在不同的层,结合图片来理解一下这个概念。示例图片如下
在这里插入图片描述
染色体之外的部分,就是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定义圆环的内径和外径,orientation定义画图的方向,oritentation = out 代表从r0r1,oritentaion = out 代表从r1r0; 这几个参数在之前的文章中就介绍过了,就不详细展开了。

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的大小,转换为不同的下标,从数组中根据下标得到不同的颜色。

扫描关注微信号,更多精彩内容等着你!
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43569478/article/details/83825969
今日推荐