前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >circos 可视化手册- heatmap 篇

circos 可视化手册- heatmap 篇

作者头像
生信修炼手册
发布2020-05-10 10:28:05
1.8K0
发布2020-05-10 10:28:05
举报
文章被收录于专栏:生信修炼手册

heatmap将一系列的数值映射到一个颜色梯度中,是最常用的图表之一。在circos中,通过plot这个block进行设置。

用法如下:

heatmap的数据和scatter plot, histogram是一样的,最少有4列内容。前3列定义染色体上的区域,第4列指定每个区域的value值,其他列可以是配置文件中的属性,示例如下

heatmapcolor属性比较特殊,在热图中,需要的是一个颜色梯度,将不同的value映射到这个颜色梯度中。所以这里的color对应的是一个list, 有两种设置方式

1. 采用内置的list

etc目录下,有很多内置的颜色配置,其中就有很多内置的颜色梯度, 示例如下

etc/colors,brewer.conf

blues-3-seqblues-3-seq-rev就是两个颜色提取的名字,对应有3种颜色

  • blues-3-seq-1
  • blues-3-seq-2
  • blues-3-seq-3

配置文件的写法如下

还可以将多个颜色梯度结合起来使用

2. 采用自定义的颜色

写法如下

在热图中,最重要的是理解valuecolor之间的对应关系。在heatmap中,共有两种映射关系

1.线性映射

默认情况下,valuecolor之间就是线性映射关系。color 的值是一个list, 对于每个value, 通过计算对应的下标color_index,就可以得到具体的颜色。

下标的计算公式如下:

从公式可以看出,二者之间是一个线性映射关系。当我们没有在配置文件中指定maxmin的值时,circos会自动根据file文件的第4列计算这两个值。当然,我们也可以手动在配置文件中指定。

当我们指定的minmax与数据不符合, 比如数据的范围是[2, 6], 配置文件中指定的是[1,5], 通过以上公式计算时,会出现下标越界的情况,此时,对于小于min的值,其颜色定义为list中的第一个颜色值;对于大于max的值,其颜色定义为list中的最后一个颜色值。

具体的是通过color_mapping参数控制线性映射的属性,共有3种取值

  1. color_mapping = 0
  2. color_mapping = 1
  3. color_mapping = 2

默认情况下,color_mapping = 0color_mapping的值设置的是一个偏移量,对于color设置的n种颜色,每种颜色均分成两份,从0开始计数,00..nncolor_mapping = 1 时,向后偏移一位,变成011..nn; color_mapping = 2时,向后偏移两位,变成112233

反应到颜色上,具体的示意图如下:

2. 非线性映射

在配置文件中添加下面的参数,开启log映射

当数据分布不均匀时,采用log映射更加合适。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-05-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信修炼手册 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 采用内置的list
  • 2. 采用自定义的颜色
  • 1.线性映射
  • 2. 非线性映射
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档