circos可以用来绘制圈图,能够对染色体上的数据进行可视化,首先需要一个染色体的文件

染色体的文件如下,每列之间空格分隔

chr - chr1    chr1
chr - chr2 chr2
chr - chr3 chr3
chr - chr4 chr4
chr - chr5 chr5
chr - chr6 chr6
chr - chr7 chr7
chr - chr8 chr8
chr - chr9 chr9

第一列 : 表名这行数据是染色体的数据

第二列: -

第三列: 染色体的名称,会显示在图上

第四列: 染色体编号

第五列:染色体的起始位置

第六列: 染色体的终止位置

第七列:染色体的颜色

在circos中有一些默认的颜色设置,用rgb设置一些默认的颜色名, 可以在circos的安装目录的etc/colors.conf 文件中查看,比如chr1 的颜色设置保存在colors.ucsc.conf 中,内容如下

chr1  = ,,
chr2 = ,,
chr3 = ,,
chr4 = ,,
chr5 = ,,
chr6 = ,,
chr7 = ,,
chr8 = ,,
chr9 = ,,
chr10 = ,,
chr11 = ,,
chr12 = ,,
chr13 = ,,
chr14 = ,,
chr15 = ,,
chr16 = ,,
chr17 = ,,
chr18 = ,,
chr19 = ,,
chr20 = ,,
chr21 = ,,
chr22 = ,,
chr23 = ,,
chrX = ,,
chr24 = ,,
chrY = ,,
chrM = ,,
chr0 = ,,
chrUn = ,,
chrNA = ,,

我们也可以自定义一些颜色的名称,将其添加到colors.conf 文件中保存即可,比如自定义颜色

sample1 = ,,

然后就可以使用sample1 作为颜色名了,在circos中还有很多颜色的名字,都是有规律的,比如

vvlred  : very very light red

vlred    : very light red

lred      : light red

red      :  red

dred    : dark red

vdred  : very dark red

vvdred : very very dark red

常用的颜色red, green, blue, yellow 都支持上面的颜色定义, 除此之外,还有其他很多的内置颜色, 详细信息可以查看circos安装目录下的/etc/colors.conf 文件查看, 里面的注释部分详细说明了颜色的定义方式。

接下来定义想要展示的数据,这里展示基因在染色体上的区间信息,通过 tile 的方式进行展示

chr1
chr1
chr1
chr1
chr1
chr1
chr1
chr1
chr1
chr1
chr1
chr1
chr1
chr1
chr1
chr1
chr1

第一列: 染色体名称

第二列:基因的起始位置

第三列:基因的终止位置

在下来准备突变位点的信息,用scatter 的方式进行展示

chr1   glyph_size=,fill_color=red

第一列: 染色体名称

第二列: 突变的起始位置

第三列: 突变的终止位置

前三列的数据是必须的,第四列用来设置每个店的大小和颜色

最后是cir<<include colors_fonts_patt<ideogram>


<spacing>
default = 10u
break = 2u
</spacing> radius = .9r
thickness = 40p
fill = yes
fill_color = black
stroke_thickness =
stroke_color = black
show_label = yes
label_font = default
label_radius = dims(ideogram,radius) + .05r
label_with_tag = yes
label_size =
label_parallel = yes
label_case = lower
label_format = eval(sprintf("%s",var(label)))
</ideogram> <image>
<<include etc/image.conf>>
</image> karyotype = monkey_karyotype.txt
chromosomes_units = <plots>
<plot>
type = tilefile = genes.txt
r1 = .0r
r0 = .88r
orientation = out
layers =
margin = .02u
thickness =
padding =
layers_overflow = hide
stroke_thickness =
stroke_color = blue
color = blue
</plot> <plot>
type = scatter
file = scatter.txt
stroke_thickness =
glyph = circle
max =
min =
r1 = .8r
r0 = .3r<rules>
<rule>
condition = var(value) <
glyph_size =
</rule>
<rule>
condition = var(value) > && var(value) <
glyph_size =
</rule>
<rule>
condition = var(value) >
gplyph_size =
</rule>
</rules>
<backgrounds>
<background>
color = vvlgrey
y0 =
</background>
</backgrounds>
</plot>
</plots> <<include etc/housekeeping.conf>>

直接在circos.conf的目录运行circos,就会生成circos.png 和circos.svg;

因为circos中没有添加图例的方法,只能手工添加,利用R绘制图列,再用windows自带的画图工具对图片进行剪裁,

最终效果如下:

circso 对数据进行可视化的更多相关文章

  1. 11,SFDC 管理员篇 - 报表和数据的可视化

    1,Report Builder 1,每一个report type 都有一个 primay object 和多个相关的object 2,Primary object with related obje ...

  2. MetricGraphics.js – 时间序列数据的可视化

    MetricsGraphics.js 是建立在D3的基础上,被用于可视化和布局的时间序列数据进行了优化.它提供以产生一个原则性的,一致的和响应式的方式的图形常见类型的简单方法.该库目前支持折线图,散点 ...

  3. 利用 t-SNE 高维数据的可视化

    利用 t-SNE 高维数据的可视化  具体软件和教程见: http://lvdmaaten.github.io/tsne/  简要介绍下用法: % Load data load ’mnist_trai ...

  4. 基于 HTML5 的 WebGL 和 VR 技术的 3D 机房数据中心可视化

    前言 在 3D 机房数据中心可视化应用中,随着视频监控联网系统的不断普及和发展, 网络摄像机更多的应用于监控系统中,尤其是高清时代的来临,更加快了网络摄像机的发展和应用. 在监控摄像机数量的不断庞大的 ...

  5. OneAPM大讲堂 | 监控数据的可视化分析神器 Grafana 的告警实践

    文章系国内领先的 ITOM 管理平台供应商 OneAPM 编译呈现. 概览 Grafana 是一个开源的监控数据分析和可视化套件.最常用于对基础设施和应用数据分析的时间序列数据进行可视化分析,也可以用 ...

  6. LDA模型数据的可视化

    """ 执行lda2vec.ipnb中的代码 模型LDA 功能:训练好后模型数据的可视化 """ from lda2vec import p ...

  7. 初识Dash -- 构建一个人人都能够轻松上手的界面,操控数据和可视化

    从事数据科学工作,少不了使用Pandas.scikit-learn这些Python生态系统中的利器,还有就是控制工作流的Jupyter Notebooks,没的说,你和同事都爱用.但是,要想将工作成果 ...

  8. B/S 端基于 HTML5 + WebGL 的 VR 3D 机房数据中心可视化

    前言 在 3D 机房数据中心可视化应用中,随着视频监控联网系统的不断普及和发展, 网络摄像机更多的应用于监控系统中,尤其是高清时代的来临,更加快了网络摄像机的发展和应用. 在监控摄像机数量的不断庞大的 ...

  9. 基于 HTML5 WebGL 和 VR 技术的 3D 机房数据中心可视化

    前言 在 3D 机房数据中心可视化应用中,随着视频监控联网系统的不断普及和发展, 网络摄像机更多的应用于监控系统中,尤其是高清时代的来临,更加快了网络摄像机的发展和应用. 在监控摄像机数量的不断庞大的 ...

随机推荐

  1. java连接mysql数据库实例

    做游戏客户端多一年多了,在大学学的java的SSH,基本上都忘完了,今天看了一下发现基本的连接数据库的都忘了...太可怕了这遗忘的速度. 所以写了个连接的例子吧..安装好mysql数据库之后新建了两张 ...

  2. VS2008配置OpenGl 亲测可行

    OpenGL作为当前主流的图形API之一,它在一些场合具有比DirectX更优越的特性.1.与C语言紧密结合.OpenGL命令最初就是用C语言函数来进行描述的,对于学习过C语言的人来讲,OpenGL是 ...

  3. 微信公众号支付安卓和WP支付成功,苹果不能支付!

    花了几天时间,终于搞好了,代码是从官网上下的.NET DEMO的代码改的,测试的时候发现安卓和WP手机都能进行支付,但是苹果的怎么支付都支付不了,主要是在下面这个界面 点支付按钮就是苹果支付不了,其他 ...

  4. webpack vue2.0项目配置文件详解

    const path = require('path') const webpack = require('webpack') const HtmlWebpackPlugin = require('h ...

  5. JavaEE各种Javadoc的下载

    刚才突然发现,很多servlet的api都不熟悉,但是又没有给eclipse导入api,就google了一下 关键字,servlet api / doc 或者java ee api / doc 注意版 ...

  6. 【GitHub】 README.ME 格式

      README =========================== 该文件用来测试和展示书写README的各种markdown语法.GitHub的markdown语法在标准的markdown语法 ...

  7. 用C# Winform做一个文件名批量修改器

    我是一名QA,我提bug以后有个习惯,就是将bug的jira地址保存为一个链接存在本地,如下: 每天都要手动的把日期“[XX.XX]”添加在里面,这个反复修改文件名的过程是比较枯燥的,于是我决定写一个 ...

  8. java 日期获取时间戳

    SimpleDateFormat df = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss");            String dateS ...

  9. Python内置字典;dict ,set

    dict and set dict:  键-值 /重复添加 set :  键 / key不能重复 对于不变对象来说,调用对象自身的任意方法,也不会改变该对象自身的内容.相反,这些方法会创建新的对象并返 ...

  10. Cookie application session

    •Application 对象是存储于服务器的全局变量 •Cookie 存储信息于客户端 •Session 对象用于在服务器端存储用户的信息,在用户结束会话时被清除 1.将信息写入Cookies 中/ ...