当然除了基因组文章,其他类型的文章也可以考虑这种图。接下来我将会写一些列教程(可能有视频),通过教别人学Circos的方式来自学Circos。

建议在Linux环境下配置Circos,之后只要用conda就能配置好分析环境

## circos conda create -c bioconda -n circos circos

测试软件安装结果

# 测试circos
conda activate circos
# 确认安装
circos -V
# 显示如下
# circos | v 0.69-8 | 15 Jun 2019 | Perl 5.026002

可以从 http://circos.ca/software/download/ 下载官方的教程文件,分别是

Circos依赖于一些列的配置文件,用来定义复杂图形的各个部分,最终加工成图形。

因此,用Circos画图是一个不断增添内容的过程,你要不断根据输出结果来调整输入参数。

并且整个分析中,你还要拥有过关的数据预处理的能力,这是因为Circos不是数据处理工具,它只是展示你已有的数据。

第一步,先新建一个文件夹,用于存放本次分析的所有数据和配置文件

mkdir -p my_first_circos && cd my_first_circos

然后用 vim karyotype.tair10.txt 编辑文本,新增如下内容

chr - chr1 chr1 0 30427617 black
chr - chr2 chr2 0 19698289 black
chr - chr3 chr3 0 23459830 black
chr - chr4 chr4 0 18585056 black
chr - chr5 chr5 0 26975502 black

之后创建一个 circos.conf 文件,用于增加各类配置参数

touch circos.conf

用 vim circos.conf ,增加我们的第一条记录,染色体信息

karyotype = karyotype.tair10.txt

然而要想真正的出图,还需要增加至少以下配置语句才行

<ideogram>
<spacing>
default = 0.005r
</spacing>
radius           = 0.90r
thickness        = 20p
fill             = yes
stroke_color     = dgrey
stroke_thickness = 2p
</ideogram>
<image>
<<include etc/image.conf>>
</image>
<<include etc/colors_fonts_patterns.conf>>
<<include etc/housekeeping.conf>>

在当前路径下运行 circos -conf circos.conf , 最终效果图如下

虽然图比较丑,但是至少我们成功运行了人生第一次的circos, 这就相当于买了一套毛坯房,后面要做的事情就是不断装修。

比如说,我们至少可以让不同染色体拥有不同的颜色,修改之前的 karyotype.tair10.txt 中的最后一列

chr - chr1 chr1 0 30427617 chr1
chr - chr2 chr2 0 19698289 chr2
chr - chr3 chr3 0 23459830 chr3
chr - chr4 chr4 0 18585056 chr4
chr - chr5 chr5 0 26975502 chr5

在当前路径下运行 circos -conf circos.conf , 最终效果图如下

这就引出了第一个知识点, 配色 。

为了实现配色,需要 circos.conf 文件了有一个和配色有关的语句

<<include etc/colors_fonts_patterns.conf>>

这里 <<>> 表示通过 相对路径 的方式加载另外一个配置文件,它的实际路径是和 circos 所在目录同级的 etc ,可用下面语句看到 colors_fonts_patterns.conf 的内容

circos_path=$(dirname `which circos`)
less ${circos_path%bin}/etc/colors_fonts_patterns.conf

你会发现,这个文件里还嵌套其他的配置文件。最终通过层层排查,你才知道 etc/colors.ucsc.conf 才是实际定义我们填写的颜色名的文件,而颜色的定义如下:

chr1  = 153,102,0
chr2  = 102,102,0
chr3  = 153,153,30
chr4  = 204,0,0
chr5  = 255,0,0

还有一个问题,为什么这里用的是两个尖括号 << ,而不是一个尖括号 < 呢?这是因为 < 已经被用于分隔不同的语句块,如下语句就表示 etc/image.conf 里的配置信息是用来调整和 image 有关的配置,而不是去调整 ideogram 的配置。

<image>
<<include etc/image.conf>>
</image>

以上是快速开始部分,后续将会在此基础上,做出发表级别的图。

> # 颜色配置 > colors <- c ( "#FFE4E1", "#E0FFFF", "#F0FFF0", "#FFF8DC" ) # 各年龄段主色 > bar_colors <- c ( "#CD5C5C", "#4682B4", "#32CD32", "#DAA520" ) # 外环条形颜色 > # 初始化参数 > circos .clear ( ) > circos .par ( + gap.after = c ( rep ( 8, 3 ) , 8 ) , # 增加扇区间隙 + start.degree = 90, + track.margin = c ( 0.01, 0.05 ) > # 主环形 图 初始化 > circos .initialize ( factors = names ( data_list ) , + x = rep ( 1, length ( data_list ) ) , + sector.width = rep ( 1, length ( data_list ) ) ) 错误: Range of the sector ( 0-6月 ) cannot be 0. 当矩形 图 无法满足要求的时候,我们就要掰弯它。 circos 图 是出现在各大期刊上的概率大大提高了,这不仅仅因为它好看,其次 Circos 还能同时展示出不能类型的数据。 一 、 Circos 的安装 1、conda安装 通过conda search circos ,我们可以看到有很多个 circos 版本,因此我们无论安装哪个版本都是可以的。conda软件的安装在前面的文章中已经具体讲解。 [外链 图 片转存失败,源站可能有防盗链机制,建议将 图 片保存下来直接上传 ( img-iGohKlon-1615
在 从零开始 学 Circos 绘制 圈 图 ( 一 ) 我们已经 绘制 出 一 个比较丑的 circos 图 ,这 一 部分是讲解 一 些细节。 这 一 部分会从上 一 步的两个文件开始,分别是 karyotype.tair10.txt chr - chr1 chr1 0 30427617 chr1 chr - chr2 chr2 0 19698289 chr2 chr - chr3 chr3 0 23459830 chr3
CIRCOS 是用于可视化循环 图 的软件工具。如果你想 从零开始 学 习 CIRCOS ,以下是 一 些步骤和资源可以帮助你入门: 1. 了解 CIRCOS :首先,你需要了解 CIRCOS 的基本概念和用途。 CIRCOS 主要用于可视化循环数据,如基因组比对、染色体相互作用等。你可以阅读官方网站(http:// circos .ca/)上的文档,了解其功能和使用方式。 2. 安装 CIRCOS :在 学 习 CIRCOS 之前,你需要在你的计算机上安装 CIRCOS 。官方网站上有详细的安装指南,根据你的操作系统选择适合的安装方法。 3. 学 习语法和配置文件: CIRCOS 使用自己的配置文件来定义 图 表的外观和数据的呈现方式。你需要 学 习 CIRCOS 的语法和配置文件结构。官方网站提供了详细的文档和示例,你可以按照文档逐步 学 习和实践。 4. 练习使用示例: CIRCOS 官方网站上提供了许多示例配置文件和数据,你可以下载并尝试运行这些示例。通过实际操作,你可以更好地理解和掌握 CIRCOS 的使用方法。 5. 探索其他资源:除了官方网站,你还可以寻找其他 学 习资源,如教程、博客文章和视频教程。这些资源可以帮助你更深入地了解 CIRCOS 的高级功能和应用场景。 总的来说, 学 习 CIRCOS 需要 一 定的时间和实践经验。通过阅读文档、尝试示例和不断练习,你可以逐步掌握 CIRCOS 的使用技巧,并能够创建出令人满意的循环 图 可视化效果。祝你 学 习顺利!
太阳照常升起901: 我直接用conda下载老版本,指定文件全路径调用就可以跑起来,我使用的是beagle处理过的VCF定相文件,作者对构建遗传图谱的建议:Beagle uses linear interpolation to estimate genetic positions between map positions. If no genetic map is specified, Beagle assumes a constant recombination rate of 1 cM per Mb. https://faculty.washington.edu/browning/beagle/beagle_5.5_17Dec24.pdf 使用purge_haplogs处理基因组杂合区域 m0_74862797: 您好,能不能请教如果只有一个峰,怎么根据这个图选择参数啊 如何下载SRA存放在AWS的原始数据 Spark_xY6: 同问。我一天了,几百M的数据还没传到,也不知道进度如何 表情包 告别3D-DNA试试chromap和yahs做Hi-C辅助组装吧 Huli_ya: 你好,请问这个问题解决了吗 利用3D-DNA流程组装基因组 LKemia: 你好,我想问一下运行时报错“Java heap space”,然后,我尝试增加JAVA的内存,但是从64G到512G都报错“no space left on device”,但实际上系统上有大约800G的内存,请问这是为什么呢