相信大家都听说过circos图,但是亲自画过的人可能就很少,这主要因为软件的安装和使用稍微有一点麻烦。其实,circos图也是可以在线绘制的,这样就简单多了!一起来了解一下吧!

在circos官网(http://circos.ca/)的最右方有个“CIRCOS ONLINE”选项,这里可以实现在线绘制部分circos图。

打开后界面如下:

以微生物多样性分析中样品与物种丰度circos图绘制为例,给大家讲解circos图的绘制功能。该图能够很直观的反映各样品中不同物种所占的比例,以及物种在不同分组或者样品中的分布关系。

绘制circos图

1.数据准备

首先我们要做的就是准备画图所用到的数据,所用数据为物种在各样品中的相对丰度,这里只选用丰度大于0.01的物种用于绘图,数据如下(列名A、B、C为样品,行名Acetobacteraceae等是科一水平的物种分类):OTU    A       B       C

Acetobacteraceae        0.506365321669611       0.596887241236994       0.457528142134733

Arcobacteraceae 0.000329490484604467    0.017913387252098       0.000426249200782749

Bacteroidaceae  0.0175209280769342      0.0455871811395347      0.352221339584988

Dysgonomonadaceae       0.00184297424905136     0.0256500300487296      0.0330226880824598

Lachnospiraceae 0.00569185760217826     0.0139020628633905      0.0173870923992018

Lactobacillaceae        0.17495220577586        0.237946115025089       0.0588340146862225

Pseudomonadaceae        0.0021326362135388      0.0286295607092948      0.0127991010016856

Ruminococcaceae 0.00312472844190829     0.00506121976120311     0.0274388235522058

Sphingomonadaceae       0.257860701561278       0.00711394623087561     0.00898610815104722

由于网站要求的数据格式为非负整数,故将所有的数据乘1000(系统会自动截掉小数点后的数据),输入数据则变为:OTU    A   B   C

Acetobacteraceae    506.365321669611    596.887241236994    457.528142134733

Arcobacteraceae    0.329490484604467   17.913387252098 0.426249200782749

Bacteroidaceae    17.5209280769342    45.5871811395347    352.221339584988

Dysgonomonadaceae    1.84297424905136    25.6500300487296    33.0226880824598

Lachnospiraceae    5.69185760217826    13.9020628633905    17.3870923992018

Lactobacillaceae    174.95220577586 237.946115025089    58.8340146862225

Pseudomonadaceae    2.1326362135388 28.6295607092948    12.7991010016856

Ruminococcaceae    3.12472844190829    5.06121976120311    27.4388235522058

Sphingomonadaceae    257.860701561278    7.11394623087561    8.98610815104722

2.绘图

数据准备好就可以来绘制circos图了,只需要导入数据就可以。

生成的图片如下:

可以看到,图中的物种和样品完全是按照字母顺序排列的,我们希望物种和样品分别位列两边,这里可以人为的对其指定顺序。方法也很简单,就是在数据的第一行和第一列用数字来指定顺序。如下:OTU    OTU 1   2   3

OTU    OTU A   B   C

12    Acetobacteraceae    506.365321669611    596.887241236994    457.528142134733

10    Bacteroidaceae  17.5209280769342    45.5871811395347    352.221339584988

8    Dysgonomonadaceae   1.84297424905136    25.6500300487296    33.0226880824598

6    Lachnospiraceae 5.69185760217826    13.9020628633905    17.3870923992018

11    Lactobacillaceae    174.95220577586 237.946115025089    58.8340146862225

7    Pseudomonadaceae    2.1326362135388 28.6295607092948    12.7991010016856

5    Ruminococcaceae 3.12472844190829    5.06121976120311    27.4388235522058

9    Sphingomonadaceae   257.860701561278    7.11394623087561    8.98610815104722

4    Arcobacteraceae 0.329490484604467   17.913387252098 0.426249200782749

第一行指定了样品的顺序,而第一列按丰度指定物种的顺序。生成图片时要勾选下图红框中的选项(排序所用),不然会报错哦!

新图如下:

图中由于部分物种丰度较低,导致物种名重叠,解决这个问题可以改变文字的布局。这时就需要进行设置了。

3.图片设置

点击"settings"进入设置界面,会有很多的设置选项,可以对图片进行细调。

这里只需要修改两个地方即可,将下图第一个红框改为“no”,可以调整文字为垂直布局,避免重叠;但是如果物种名太长,又可能会超出图片范围,所以要缩小圆圈的半径,即将第二个红框改为small。

修改并保存设置后,重新生成图片:

python画circos图_Circos图--在线绘制相关推荐

  1. python绘制三维散点图-python 画三维图像 曲面图和散点图的示例

    用python画图很多是根据z=f(x,y)来画图的,本博文将三个对应的坐标点输入画图: 散点图: import matplotlib.pyplot as plt from mpl_toolkits. ...

  2. python画轨迹曲线-python 画3维轨迹图并进行比较的实例

    一. 数据的格式 首先我们需要x,y,z三个数据进行画图.从本实验用到的数据集KITTI 00.txt中举例: 1.000000e+00 9.043680e-12 2.326809e-11 5.551 ...

  3. 使用python画k均值分类图

    欢迎关注公众号:老白和他的爬虫 昨天帮小余同学用python画了下k均值分类图,原理比较简单在这里分享一下. 首先小余同学已经用spss做好了族群分类,分类结果如图所示 一共有100条结果,这里只截取 ...

  4. python画circos图_教你在线绘制circos图

    相信大家都听说过circos图,但是亲自画过的人可能就很少,这主要因为软件的安装和使用稍微有一点麻烦.其实,circos图也是可以在线绘制的,这样就简单多了!一起来了解一下吧! 在circos官网(h ...

  5. 用python 画炫酷的图并讲解-Python绘制六种可视化图表详解,三维图最炫酷!你觉得呢?...

    可视化图表,有相当多种,但常见的也就下面几种,其他比较复杂一点,大都也是基于如下几种进行组合,变换出来的.对于初学者来说,很容易被这官网上众多的图表类型给吓着了,由于种类太多,几种图表的绘制方法很有可 ...

  6. 如何使用python画折线图-Python数据可视化:使用Python画柱状图和折线图

    Python爬虫太火了,没写过爬虫,都不敢说自己学过Python?! 可是刚一开始学我就遇到了难题----数据分析!听起来很高大上,有没有? 想要做爬虫,就得先学会使用数据分析工具,制作图表这是最基本 ...

  7. python画出K线图及技术指标

    目录 安装mplfinance及Ta-lib 画图 安装mplfinance及Ta-lib mplfinance是基于matplotlib的金融数据可视化分析模块,前身是mpl_finance,比起m ...

  8. python画聚类树状图_影像组学学习笔记(36)-聚类树状图Dendrogram的python实现

    本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(36)主要介绍: 聚类树状图Dendrogram的python实现 应该注意一下scipy版本的问题:scipy 1.5.0版本画聚类树 ...

  9. python画带权重的图

    最近与几个少年在用C++学习数据结构与算法,讲到图时,总觉得要展示出直观内容才比较好,找到python就可以方便地展示图.(前一阵子还可以找到C++用字符展示树的代码,图要用字符展示,我想还是算了吧) ...

最新文章

  1. python画二维散点图-python3实现绘制二维点图
  2. std::string用法总结
  3. 手把手教你自己写一个js表单验证框架
  4. STM32 基础系列教程 1- CubeMX+GPIO
  5. Tomcat - Tomcat套娃式架构与配置文件的对应关系解读
  6. Elasticsearch之配置详解
  7. vue element-ui级联选择器选中后下拉框自动收起
  8. oracle sqlplus执行脚本_oracle主、从自动切换方案?我是这样实现的
  9. html盒子模型的原理,新手对于CSS盒模型的认知
  10. 高等数学张宇18讲 第十八讲 第二型曲线曲面积分
  11. java抽象类和普通类_抽象类和普通类的区别是什么?java类和抽象类的区别
  12. 知物由学 | Android 模拟点击研究,如何突围“黑灰产”的自动化作弊?
  13. python制作简单网页_怎么用python简单的制作一个网页
  14. 高级启动选项重装计算机,如何使用高级选项重装win10系统?重装win10系统方法...
  15. 【京东电商网站主界面仿写—
  16. CSMA/CA基本原理
  17. 备忘录莫名其妙的没了_华为手机总是多出莫名其妙的照片?一键找到源头,教你彻底删除...
  18. python soap服务_Python SOAP服务器/客户端
  19. 英语各种发音技巧汇总!!!
  20. 赛门铁克召开2010财年中国合作伙伴高峰会

热门文章

  1. zotero+谷歌翻译不能用,最后的解决方案!
  2. Moment.js 文档
  3. JS 中 TDZ 的理解
  4. 什么A股,B股,H股?什么是红筹股,蓝筹股
  5. 最新uniapp打包IOS详细步骤
  6. Hazelcast IMDG参考中文版手册-第十一章-分布式查询
  7. 即时通讯(IM)开源项目OpenIM每周迭代版本发布-音视频实时通话-v2.0.4
  8. JAVA 静态方法和成员方法、静态方法的调用
  9. tf.nn.dropout() 警报信息处理
  10. regopenkeyexfailed什么意思_外置网卡驱动安装出现RegOpenKeyEx Failed,怎么回事?