今天介绍一种绘制韦恩图的新工具:

nVenn:绘制广义的准比例维恩图

优势

nVenn可以通过输入包含标题,集合的数量、名称以及描述维恩图中每个区域的元素数目的文件,生成易于解释的n维维恩图的所有区域,同时保持每个区域的面积与包含的元素数量大致成比例。

nVenn提供了三种界面方式来绘制韦恩图:

1. 输入命令行

2. OpenGL图形输出

3. Web界面

(http://degradome.uniovi.es/cgi-bin/nVenn/nvenn.cgi)

软件获得方式

nVenn工具获取:https://github.com/vqf/nVenn

获得软件解压缩后可以找到nVenn适用于linux和Windows系统的相应软件

原理

基于对称链分解生成所需数量的集合(n)的广义Venn图

生成n组的布尔格阵列

(该格阵表示每个区域为布尔向量,其中每个元素表示一个集合。如果该位置填充1,则该区域属于该集合,而如果该区域填充0,则该属性不属于该集合。)

通过模拟缩小每个区域得到韦恩图

大体过程如图:

软件三种界面介绍

当前版本的nVenn可以使用三种不同的界面

命令行,OpenGL图形输出和Web界面

虽然核心方法是一样的,每种风味都有不同的要求和使用方式。

(一) 命令行

点击nVenn.exe运行软件(适用于linux和Windows系统)

读取在软件所在文件夹的文件名

例如:venn_4set.txt

运行界面

文件格式:

虚线前:文本内容

虚线后:文本解释内容

文本包含了标题、集合个数、集合名字以及各区域元素个数

四位二进制数代表对应集合,0代表未在集合中,1代表在集合内

比如1000代表在集合1中,1100代表在集合1和2中

得到结果文件统一命名为result.svg,同时还保留了过程中产生的文件result.svg.data

结果说明:

每个圆中数字代表区域内元素的个数,数字下方括号内数字代表属于哪个集合或哪些集合的交集

通过重复执行,原则上可以处理无限数量的集合。

但是,必须注意的是,模拟完成所需的时间随着组数的增加而快速增长。

(二) OpenGL图形输出(仅适用于windows)

输入文件格式与命令行文件相同,但文件名必须为venn.txt

输出文件名为result.ps

运行过程:

运行中用户可以决定实时何时从一个阶段跳到下一个阶段。

最终得到图形的输出文件:

(三) web界面(最多绘制六个集合的韦恩图)

网址:http://degradome.uniovi.es/cgi-bin/nVenn/nvenn.cgi

(网址目前打不开,你懂得)

输入:在文本框中输入每个集合的成员。

web界面计算图的每个区域中的元素数量,运行nVenn并呈现输出。

以GO:0045087(先天免疫系统)为例,

生成具有不同GO证据代码的六个子集:IBA(从祖先的生物学方面推断),IC(由策展人推断),IDA(从直接测定推断),IEA(从电子注释推断),ISS(从序列或结构推断)相似性)和NAS(不可追溯作者声明)。

输出结果:

结果解释:

所得到的韦恩图简要概述了每个子集的不同大小,以及它们之间的显着相关性。

IEA和ISS的交集非常大,使ISS几乎成为IEA的一个子集。

Web界面为分析图表提供了额外的工具,用户可以快速找出哪些元素对应于每个区域。例如同时勾选IEA和ISS就可以得到交集中所有元素的个数和元素名。

web界面面还允许定制最终图片。用户可以添加或删除标签来描述每个区域并显示其中包含的元素数量。每套的颜色和不透明度以及边框的宽度也可以调整。输出图可以以矢量格式(可缩放矢量图形,SVG)和位图格式(便携式网络图形,PNG)保存。

软件不足讨论部分

nVenn的目标是生成易于解释的图,韦恩图传达无限数量的信息。

尽管存在这种能力,但实际上很难将维恩图解释为六组以上。

通常情况下生成的韦恩图不一定是凸面或严格良好的形状,为了美观,在nVenn的开发中,最终图的一些审美品质优先于严格的比例。

当最终数字中的一些地区太小时,会出现进一步的比例偏差。

为避免不可见区域,最小圆半径设置为图的宽度或高度的1%。

设置的线与内圈的距离不同。

该功能可最大限度地减少线条之间的重叠,从而可以轻松追踪每条线条。

因此nVenn得到的是广义的近似成比例维恩图。

linux 韦恩图两个,nVenn:绘制广义的准比例维恩图相关推荐

  1. matlab画服装版,设计师必备款式图干货|如何绘制一张完美的款式图?看完这些你就懂了...

    原标题:设计师必备款式图干货|如何绘制一张完美的款式图?看完这些你就懂了 *服装设计是艺术和技术的完美结合,服装设计是通过服装设计师经过市场调查,分析各种流行因素,进行设计构思,然后绘制出设计草图和效 ...

  2. r语言做绘制精美pcoa图_三分钟绘制一张优美的PCoA图 | 云平台

    本文主要为您迅速绘制一张优美的PCoA图提供步骤指导(1-4要点),另附细节优化方法(5及之后的要点),可后期慢慢研究调整,同时提供相关分析方法说明和参考文献,为您深入了解提供支持. 1.了解输入数据 ...

  3. matlab画多组数据折线图_使用Origin绘制不相关多组数据折线图的方法

    原标题:使用Origin绘制不相关多组数据折线图的方法 由于不知道这样的标题是否能表达清楚我的意思,我再详细描述一下这几天遇到的问题:首先,想画一个折线图,但又不是普通的y=f(x)这样的图,而是由多 ...

  4. python画3d图-Python 竟能绘制如此酷炫的三维图

    通常我们用 Python 绘制的都是二维平面图,但有时也需要绘制三维场景图,比如像下面这样的: 这些图怎么做出来呢?今天就来分享下如何一步步绘制出三维矢量(SVG)图. 八面体 我们先以下面这个八面体 ...

  5. 学习使用XMind——绘制计算机网络概述的思维导图

    @学习使用XMind--绘制计算机网络概述的思维导图 学习使用XMind--绘制计算机网络概述的思维导图举例 XMind介绍 思维导图是一种表达放射性思维的图形工具.很多时候在我们处理某件事情.某项工 ...

  6. [python] 基于matplotlib_venn实现维恩图的绘制

    文章目录 VENN DIAGRAM(维恩图) 1. 具有2个分组的基本的维恩图 Venn diagram with 2 groups 2. 具有3个组的基本维恩图 Venn diagram with ...

  7. 相关性分析热点图_高分文章中物种与代谢物相关性热图是怎么画的?

    测序行业的蓬勃发展,带来微生物组学日新月异的变化.目前,单一组学的文章不断"贬值",前沿研究的目光从单一组学逐步拓展至多组学对贯穿分析,即结合多个组学的分析角度,从多个层面阐述生物 ...

  8. 如何在线创建维恩图 (Venn Diagram)?

    想创建维恩图?我们将向您介绍维恩图,并让您了解如何使用在线维恩图软件创建维恩图. 维恩图示例(由Visual Paradigm Online创建) [在Visual Paradigm Online中打 ...

  9. python中画折线图不同颜色的两段_matplotlib绘制精美的折线图——另附颜色、形状查找表...

    0 配置及环境 系统: win7 x64 python: 3.64 x64 包: matplotlib.numpy 本文主要是讲述如何利用python的matplotlib包来绘制精美的折线图,包括绘 ...

  10. python画两条曲线图_python绘制多个曲线的折线图

    这篇文章利用的是matplotlib.pyplot.plot的工具来绘制折线图,这里先给出一个段代码和结果图: # -*- coding: UTF-8 -*- import numpy as np i ...

最新文章

  1. IOS 6.0+ Autolayout — UITableViewCell 高度调整
  2. 多线程信号量PV操作初探
  3. python2必须安装步骤_Python入门-第三方库的安装及环境配置(2)
  4. AtCoder Beginner Contest 215 G - Colorful Candies 2
  5. GEMM算法及优化流程详解
  6. jq php 获取机器码,jquery实现聊天机器人
  7. php sql 长字符串 查找被包含的短字符串_PHP字符串
  8. 取出字符串strName前4个汉字
  9. linux命令:FTP服务
  10. 什么是JavaScript异步编程?
  11. 求教origin拟合蠕变柔量(burgers模型)。
  12. 关于2021年个人公众号总结
  13. 前端如何压缩图片质量
  14. fastapi之tortoise-orm
  15. 如何读一篇论文,笔记
  16. 戴尔计算机更新程序,戴尔电脑如何更新显卡驱动 其实很简单-电脑显卡怎么升级...
  17. java报错establishing_JDBC连接SQLServer时出现错误Error establishing socket.的解决。
  18. 怎么追学计算机的女生,怎样去追比较文静,不爱说话的女生!!!!!
  19. python 切割图_python切割图片的示例
  20. 《深入浅出通信原理》辅助笔记

热门文章

  1. ASA Failover
  2. [易飞]同一单据如何根据不同用户或组限定仓库(客户)
  3. OneStep 移植
  4. outlook qr码在哪里_原平防伪码溯源_橙程(北京)科技有限公司
  5. solidity投票(ballot)合约
  6. 如何禁止 Google Chrome 自动更新 (macOS, Linux, Windows)
  7. win7系统怎么用笔记本做wifi热点
  8. 待支付取件费用是什么意思_待支付(待支付_订单待支付是什么意思_待支付取件费用)...
  9. 华硕美版路由器RT-AC1200G+解决无线信号弱问题
  10. 运用jQuery实现一个简易轮播图