介绍
circos
以圆环的形式展示基因组数据及相关的注释信息,能够生成出版级别的图片,非常适合对染色体内、外关系进行可视化。
前面我们已经简单介绍过了 circos
绘图,接下来我们将详细介绍 circos
安装及使用
1 下载安装
1.1 下载地址
http://circos.ca/distribution/circos-0.69-9.tgz
1.2 解压
tar xvfz circos-0.69-9.tgz
1.3 查看环境
cd circos-0.69-9
./circos -modules
从命令行输出结果可以看出:
-
ok
,代表依赖的模块已经安装 -
missing
,代表该模块不存在,需要自己安装
缺了挺多模块的,-,没办法
动手安装吧
1.4 安装模块
如何安装 perl
模块呢?当然首先得保证安装了 perl
了
来看看 perl
安装在哪
> which perl
/usr/bin/perl
# or perhaps
/usr/local/bin/perl
如果没找到,那就先装一个吧
不会装?那就来点简单点的吧,上 conda
conda create -n perl
conda activate perl
conda install -c anaconda perl
如果是Windows
系统,可以安装 Strawberry Perl
或 ActiveState Perl
安装模块
最简单的方式就是用 cpan
来安装模块了
如果是Windows
系统,Strawberry Perl
或 ActiveState Perl
有自带的包管理工具,能够安装、升级和删除
为了确保正常安装,就要用 sudo cpan
进入 cpan
的交互式界面
然后缺了哪个模块就安装哪个
cpan[1]> install Config::General
看到安装 OK
了,就可以继续下一个模块了
直到全部安装 OK
为止
此处省略 5
分钟
> circos -modules
ok 1.29 Carp
ok 0.36 Clone
ok 2.63 Config::General
ok 3.40 Cwd
ok 2.145 Data::Dumper
ok 2.52 Digest::MD5
ok 2.84 File::Basename
ok 3.40 File::Spec::Functions
ok 0.23 File::Temp
ok 1.51 FindBin
ok 0.39 Font::TTF::Font
ok 2.73 GD
ok 0.2 GD::Polyline
ok 2.39 Getopt::Long
ok 1.16 IO::File
ok 0.33 List::MoreUtils
ok 1.38 List::Util
ok 0.01 Math::Bezier
ok 1.998 Math::BigFloat
ok 0.06 Math::Round
ok 0.08 Math::VecStat
ok 1.03 Memoize
ok 1.32 POSIX
ok 1.08 Params::Validate
ok 1.61 Pod::Usage
ok 2.05 Readonly
ok 2013031301 Regexp::Common
ok 2.85 SVG
ok 1.19 Set::IntSpan
ok 1.6611 Statistics::Basic
ok 2.41 Storable
ok 1.17 Sys::Hostname
ok 2.02 Text::Balanced
ok 0.62 Text::Format
ok 1.9725 Time::HiRes
看到这张图,万事大吉,可以开工了
偶,对了
顺便将 circos
加入环境变量中吧,方便~
如果你想手动安装
- 对于 Makefile.PL 系统的模块
# download module
> wget http://search.cpan.org/CPAN/authors/id/S/SW/SWMCD/Set-IntSpan-1.16.tar.gz
# unpack archive
> tar xvfz Set-IntSpan-1.16.tar.gz
> cd Set-IntSpan-1.16
# configure and compile
> perl Makefile.PL
> make
> make test
> make install
- Build 系统
# download module
> wget http://search.cpan.org/CPAN/authors/id/D/DR/DROLSKY/Params-Validate-0.95.tar.gz
# unpack archive
> tar xvfz Params-Validate-0.95.tar.gz
> cd Params-Validate-0.95
# configure and compile
> perl Build.PL
> ./Build
> ./Build test
> ./Build install
2 测试例子
既然都安装成功了,何不来个例子助助兴呢
$ cd example
$ ./run
$ ls
README circos.png circos.svg
data etc run run.out
运行上面的代码,就会看到这两个文件
circos.png
和 circos.svg
,大致就是下面这个样子的
3 circos 命令行参数
$ circos -h
Usage:
# 未设置 -conf,会自动搜索配置文件
circos
# 指定配置文件
circos -conf circos.conf
# 诊断所需模块是否安装
circos -modules
# 代码组件详细的 debug 信息
circos -debug_group GROUP1,[GROUP2,...]
# 全部 debug 信息
circos -debug_group _all
# 不输出报告
circos ... [-silent]
#
# any parameters that match REGEXP (optional)
circos -cdump [BLOCK1/[BLOCK2/...]]{:REGEXP}
circos -cdump ideogram
circos -cdump ideogram:label
circos -cdump ideogram/spacing
# 覆盖配置文件中的参数
circos -param image/radius=2000p -param ideogram/show=no
# 自娱自乐,随机挑选颜色
circos -randomcolor COLOR1,[COLOR2,...]
circos -randomcolor white,black
# 帮助信息
circos -h
# man 页面
circos -man
# 版本
circos -v
可以看出,circos
命令行参数倒是不多,主要是通过解析核心配置文件来生成静态图片的。
而这个核心配置文件,通常又可以导入其他配置文件,比如全局颜色、字体配置
4 工作流程
circos
没有图形界面,一般的工作流程如下:
- 确定显示数据形式 (这个最难)
- 将数据解析成
circos
格式 - 构造配置文件,可以直接使用官网精美的图片模板也可以自己配置
- 运行
circos
,生成PNG
和SVG
图片