借助工具绘制完整circos图(一)数据准备与数据理解

相关文章:

(一)数据准备与数据理解

(二)数据拼接

(三)生成图像与显示不全等问题

(四)颜色更改

(五)重排序

在使用circos online(http://mkweb.bcgsc.ca/tableviewer/)绘制circos图时,由于我们的输入的行或者列超过100行时,系统会自动对数据进行截断,只取前100行100列,导致绘制的circos图像缺失了后边我们的数据,如何能绘制完整的图像呢?通过多次测试,我在这通过数据拼接的形式实现,先贴上官网的结果图以及数据拼接后的结果图:

先说一下输入文件:共142列11行(包括header),列名以XY开头,共141项,行名以OTU开头,共10项。(为了方便区分行名和列名,在这要求行名和列名有一定的可区分度,例如以某个字符串开头为行名,否则为列名等等)

 

官网结果图:

只有95个XY:(前100个XY,并且其中5个列为0,不显示)

(使用浏览器的查询功能)

拼接后的结果图:

共134个(有七个XY的列全为0,所以不显示)

 

 

说一下前序准备:

1.将原始数据分为两个txt(列和行header都保留),比如我将前71列的数据放在第一个表内,72-141列的放在第二个表内。(以两个文件为例,如果上百则需要分为多个,每个列或行数最大为100,代码不动的话每次操作两个,依次合并)

2.每个表分别上传到http://mkweb.bcgsc.ca/tableviewer/,点击Visualize Table,获取结果。

3.分别下载数据。

4.分别解压后,找到data文件夹,重命名为data1或data2后,移动到同一个目录内。

 

之后,我们分别读取data1和data2文件夹下地同名文件,按照某种规则将他们的信息拼在一起后,得到合并后的数据。

为了准确地拼接每个数据,首先要对每个数据的含义进行分析。

data文件夹下的数据如下:

倒着看,1.stderr.txt 这是个空的,不管了

2.segmentlabel.txt:

定义了每个label(txt在第一列,对应输入表格的行名和列名)对应的segment的长度信息(第三列),第二列为全0.第四列与第一列相同。

对应图中的如下信息(红框框出),注意,segment不包括底部的小方块(右侧的红框拦截的部分)

3.scaling.conf

定义每个label(OTU和XY)的缩放,默认为1

4.row.txt

定义了每个OTU(行名)的row的贡献圈(三层贡献圈的最内侧)的每个段使用的颜色变量名,颜色是连接的XY(列名)的设置好的颜色,见colors.conj。

三层贡献圈:

1表示all(每个label的all为其col和row的拼接),2表示col,3表示row。

所以,row.txt对应图中的如下信息:

例如某行中出现 OTU_8  25411  35891 fill_color=colorxy1831

意思为OTU8的row贡献圈的下标25411到25891(上图红框内的某个颜色格)颜色为XY1831的颜色。

5.parsed.txt 看起来挺乱的,但是绘制图像时没有用到这个文件,掠过

6.karyotype.txt

定义了label的segment宽度和使用的颜色变量名。(和segmentlabel相似,宽度是一致的但是多了颜色信息)

7.color_percentile.conf

ribbon的颜色信息,这个是默认的,即两个数据的这个文件是完全一致的,不用拼接。

8.colors.conj

定义了每个颜色变量名称对应的RGB颜色值(karyotype.txt使用的是颜色变量名)

9.col.txt 

与row.txt 定义了col贡献圈的分段颜色信息。

10.cells.txt

每两行表示每个ribbon连接的OTU和XY的段,使用color_percentile.conj定义的颜色变量对每个ribbon填色(_a1可以忽略),z表示颜色深度。(下图黑色曲线圈出的紫色内容为一个ribbon,不包括两端的红色和绿色块)

11.cap.row.txt与cap.col.txt

ribbon所连接的两端的cap的段颜色。(下图黑框)

12.all.txt

贡献圈的段颜色。

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值