highlights(一)
1. wedge highlights
高亮是一种特殊的轨迹类型,用于高亮显示图形区域
高亮是定义在
块中,其图形与
块不同之处在于
- 高亮显示在任何网格和其他数据的下方
- 高亮可以自动锁定在
ideograms
的径向范围内
事实上,高亮可以在图像的任何位置绘制彩色切片,这些切片包括半径的起始/终止,基因组位置的起始/终止。
使用高亮可以突出基因组区域,指定区域的模糊,甚至可以以同心圆的方式绘制另一个物种的 ideograms
如果要在数据上方高亮,可以在
块中设置 type=highlight
1.1 wedge VS ideograms 高亮
wedge
高亮具有灵活的径向起始开始位置,由 r0
和 r1
定义
ideograms
高亮是突出显示在其内部,如果绘制了条带,会出现在条带的上方
1.2 定义高亮
高亮需要在外部文件中定义,必须至少包含 3
个字段,第 4
个可选字段定义每个高亮的格式
例如,一个简单的高亮文件可能包含诸如
# genes.txt
...
hs1 1298972 1300443
hs1 1311738 1324571
hs1 1397026 1421444
hs1 1437417 1459927
...
在
块中定义高亮格式,以及文件
在下面的例子中,使用的高亮数据文件 genes.txt
,使用的是基因转录区域定义的高亮,在图中绘制了 3
遍
z = 0
fill_color = green
file = data/3/genes.txt
r0 = 0.6r
r1 = 0.8r
file = data/3/genes.txt
r0 = 0.7r
r1 = 0.75r
z = 5
file = data/3/genes.txt
r0 = 1.1r
r1 = 1.15r
fill_color = blue
stroke_color = dblue
stroke_thickness = 2
首先,所有高亮设置都是在
块内,每个 highlight
都可以设置其自己的参数
这些参数的优先级是依次升高为
- 数据文件
因此,如果在数据文件中定义的高亮格式为红色填充色,那么这个值将会覆盖在
块或
块中设置的其他填充颜色
1.3 高亮径向位置
你想要控制的高亮,主要是通过径向位置的起始和终止位置
通常设置是 r0
(内径)和 r1
(外径)两个参数
这两个参数的相对大小(r
)是相对于 ideogram
的半径,绝对大小距离图片中心的是像素点(p
)大小
相对径向位置能够根据图像的尺寸自动调整,如
r0 = 0.5r
r1 = 0.75r
将突出显示径向位置设置为内部 ideogram
半径的 0.5-0.75
如果 r0,r1 > 1
,高亮将会显示在 ideogram
外部
也可以混合相对值和绝对值
r0 = 0.5r
r1 = 1r-25p
会从 ideogram
半径的 50%
一直绘制到 半径 - 25
个像素的位置
当你希望以不同比例显示图像时,恒定的边距可能比相对大小更有意义
1.4 z-depth
每个高亮是由数据文件的每行指定,表示的是每条染色体上基因组起点和终点位置
高亮是独立绘制的,可以通过指定高亮的 z-depth
值来控制是否优先绘制
事实上,可以为 circos
的每个数据结构指定 z-depth
值,以控制在绘制元素的优先级
在上面的例子中,我们设置了
z = 0
默认值是 0,而在第二个
块中,设置了 z = 5
,由于这个块的深度更高,因此它将绘制在第一个
块的上方
而实际发生的情况是,第一个
块先绘制,然后再绘制第二个
块,重叠的地方会被覆盖
所以,在图上看到的是第一个
块绘制的绿色高亮中有一小圈红色的高亮
1.5 highlight 格式
下面的参数可以控制高亮格式:
-
r0 -
高亮的内径 -
r1 -
高亮的外径 -
offset -
同时应用于r0
和r1
的偏移量 -
fill_color -
高亮切片颜色 -
stroke_color -
高亮边框的颜色,设置了stroke_thickness
才绘制 -
stroke_thickness -
高亮边框的厚度 -
z -
深度值,控制高亮绘制顺序 -
ideogram -
切换高亮的位置到ideogram
内
2. 高亮参数 —— 嵌入数据文件
下面介绍如何在数据文件中设置高亮参数
2.1 格式化基因列表
使用上面提到的数据 gene.txt
,分别为每一行添加随机填充颜色
对于红色的条目,将其径向位置调整为比其他颜色更靠近圆心
对于蓝色的条目,调整参数使其不在圆圈内
hs1 1298972 1300443 fill_color=blue
hs1 1311738 1324571 fill_color=red,r0=0.6r,r1=0.6r+50p
hs1 1397026 1421444 fill_color=green,r0=1.1r,r1=1.15r
hs1 1437417 1459927 fill_color=green,r0=1.1r,r1=1.15r
hs1 1540746 1555847 fill_color=yellow
hs1 1560962 1645635 fill_color=purple
hs1 1624179 1645623 fill_color=grey
类似地,其他高亮参数都可以在数据文件中设置
3. 高亮参数 —— 使用 z-depth
z-depth
能够控制高亮的绘制顺序,如何设置该参数非常重要
3.1 避免阻塞
如果你的图中有大量的不同大小的高亮重叠,则较小的高亮有可能会被大的高亮图形覆盖
为了避免这种情况,建议将 z-depth
参数设置为与 highlight
大小成反比,以便按照降序绘制高亮
1. 先来看看随机高亮数据文件,不设置 z-depth
值
# random.highlights.txt
hs1 1725862 8379128 fill_color=chr7
hs1 4080887 11075336 fill_color=chr8
hs1 5183662 14345280 fill_color=chr10
hs1 10044837 11066617 fill_color=chr1
hs1 10565297 13980978 fill_color=chr4
hs1 11557401 23262460 fill_color=chr13
hs1 12870075 25724192 fill_color=chr15
hs1 13920706 18409477 fill_color=chr5
hs1 25404101 33003848 fill_color=chr8
...
2. 现在我们根据区间大小设置 z-depth
的值:
z = 100-100*size/max(size).
size
为每个区间长度, max(size)
为最大长度
hs1 1725862 8379128 fill_color=chr7,z=68
hs1 4080887 11075336 fill_color=chr8,z=66
hs1 5183662 14345280 fill_color=chr10,z=55
hs1 10044837 11066617 fill_color=chr1,z=95
hs1 10565297 13980978 fill_color=chr4,z=84
hs1 11557401 23262460 fill_color=chr13,z=43
hs1 12870075 25724192 fill_color=chr15,z=37
hs1 13920706 18409477 fill_color=chr5,z=78
hs1 25404101 33003848 fill_color=chr8,z=63
...
从第二条轨迹,也就是内圈,可以看出,有些在外圈被覆盖的区域显示出了颜色
3. 通过设置高亮的径向位置来避免遮挡
通过设置不同的 r0
、r1
的值
r0 = 0.4r - 200*k
r1 = 0.4r + 200*k
k = size/max(size)
hs1 1725862 8379128 fill_color=chr7,z=68,r0=0.4r-65.3669p,r1=0.4r+65.3669p
hs1 4080887 11075336 fill_color=chr8,z=66,r0=0.4r-68.719p,r1=0.4r+68.719p
hs1 5183662 14345280 fill_color=chr10,z=55,r0=0.4r-90.011p,r1=0.4r+90.011p
hs1 10044837 11066617 fill_color=chr1,z=95,r0=0.4r-10.0388p,r1=0.4r+10.0388p
hs1 10565297 13980978 fill_color=chr4,z=84,r0=0.4r-33.5584p,r1=0.4r+33.5584p
hs1 11557401 23262460 fill_color=chr13,z=43,r0=0.4r-115p,r1=0.4r+115p
hs1 12870075 25724192 fill_color=chr15,z=37,r0=0.4r-126.289p,r1=0.4r+126.289p
hs1 13920706 18409477 fill_color=chr5,z=78,r0=0.4r-44.1012p,r1=0.4r+44.1012p
hs1 25404101 33003848 fill_color=chr8,z=63,r0=0.4r-74.6659p,r1=0.4r+74.6659p
从最内圈可以看到,不同大小的区域,其径向位置不再固定,层次更加分明。