查看原文
其他

宏基因组实战10. 绘制圈图-Circos安装与使用

2017-11-24 朱微金 宏基因组

前情提要

如果您在学习本教程中存在困难,可能因为缺少背景知识,建议先阅读本系列前期文章

Circos安装与使用

Circos是不款功能强大的可视化软件,可以使用环状图形展示基因数据比较。可以添加多种图展信息,如热图、散点图等。

本教程目标:

  • 在Ubuntu上安装circos

  • 可视化宏基因组数据

注: 除了本文的简短教程,circos官网有非常详细的教程

安装Circos

sudo apt-get -y install libgd-perl wd=~/test/metagenome17 cd $wd mkdir circos cd circos curl -O http://dib-training.ucdavis.edu.s3.amazonaws.com/metagenomics-scripps-2016-10-12/circos-0.69-3.tar.gz tar -xvzf circos-0.69-3.tar.gz # 安装模块 circos -modules > modules grep missing modules |cut -f13 -d " " > missing_modules for mod in $(cat missing_modules); do sudo cpan install $mod; done # 检查模块是否安装好,全部出现OK则全部安装成功 circos -modules # 运行演示数据 cd $wd/circos/circos-0.69-3/example bash run

Use of uninitialized value in join or string at /mnt/bai/yongxin/test/metagenome17/circos/circos-0.69-3/bin/../lib/Circos/Heatmap.pm line 75.
上面报错信息,但并没有影响结果生成
将会产生`circos.png

可视化基因覆盖度和方向

mkdir ${wd}/circos/plotting cd ${wd}/circos/plotting # 链接prokka注释文件,salmon定量文件 ln -fs ${wd}/annotation/prokka_annotation/metagG.gff . ln -fs ${wd}/annotation/final.contigs.fa . ln -fs ${wd}/quant/*.counts . # 下载脚本辅助绘图 curl -L -O https://github.com/ngs-docs/2016-metagenomics-sio/raw/master/circos-build.tar.gz tar -xvzf circos-build.tar.gz curl -L -O https://s3-us-west-1.amazonaws.com/dib-training.ucdavis.edu/metagenomics-scripps-2016-10-12/subset_assembly.fa.gz gunzip subset_assembly.fa.gz # 上步无法下载可翻墙或从上节位置复制 cp $wd/anvio-work/subset_assembly.fa . mv subset_assembly.fa final.contigs.fa 使用khmer包提取长contigs可视化(太多人类不可读) # 进入python3虚拟环境 . ~/py3/bin/activate extract-long-sequences.py  final.contigs.fa -l 24000 -o final.contigs.long.fa # 生成circos需要的文件 python parse_data_for_circos.py

python2.7.12报错File "/usr/local/lib/python2.7/dist-packages/pandas/core/indexing.py", line 1390, in error    (key, self.obj._get_axis_name(axis))) KeyError: 'the label [count] is not in the [index]'

python3.5.2报错信息 KeyError: 'the label [count] is not in the [index]'
脚本应该是好脚本,只是不知道那里出了错。

# 手动运行脚本 mkdir -p org_gff grep '>' final.contigs.long.fa |cut -f1 -d ' '|cut -f2 -d '>' > org_list "for org in `cat org_list`; do grep -w $org metagG.gff > $org.subset.gff; done mv *subset.gff org_gff # 后面只有不多的python代码,只是我看不懂了,大神来帮忙看看问题吧parse_data_for_circos.py

Circos主要操作三类文件:

  1. 配置文件,包括样式和输出的图

  2. 核型文件,定义染色体大小布局

  3. 图中的具体配置属性

上面的脚本产生核形文件和另外四个文件,它们都是什么,从那来的吗?

我们进入circos-build并打`circos:

cd circos-build circos

此命令会产生circos.svg and circos.png看结果吧。

我们仔细看一下circos.config,可以按帮助尝试修改,如颜色、半径
大小,看看有那些变化?

其它CIRCOS相关教程

参考文献

  • 英文版 https://2017-cicese-metagenomics.readthedocs.io/en/latest/circos_tutorial.html

  • 文章链接 http://genome.cshlp.org/content/early/2009/06/15/gr.092759.109.abstract

  • 官方教程 http://circos.ca/documentation/tutorials

  • 官方课程 http://circos.ca/documentation/course/



猜你喜欢


写在后面

为鼓励读者交流、快速解决科研困难,我们建立了“宏基因组”专业讨论群,目前己有国内外七十多位PI,七百多名一线科研人员加入。参与讨论,获得专业指导、问题解答,欢迎分享此文至朋友圈,并扫码加主编好友带你入群,务必备注“姓名-单位-研究方向-职务”。技术问题寻求帮助,首先阅读《如何优雅的提问》学习解决问题思路,仍末解决群内讨论,问题不私聊,帮助同行。

学习16S扩增子、宏基因组科研思路和分析实战,关注“宏基因组”

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存