venn可视化

文章目录

  • 前言
  • 一、数据准备
  • 二、可视化
    • 1.二维
    • 2.三维
  • 3.数据保存
  • 总结


前言

韦恩图(Venn diagram)是一种用于可视化集合之间关系的图形工具。它是由英国逻辑学家约翰·韦恩于1880年引入的。

韦恩图由一组圆和它们的交集区域组成。每个圆代表一个集合,而交集区域则代表这些集合之间的共同元素。韦恩图可以用来比较不同集合之间的相似性和差异性。

优点:

可视化:韦恩图能够直观地展示集合之间的关系,使人们更容易理解和比较不同集合的共同和独有元素。
分类和分析:韦恩图可以帮助人们对集合进行分类和分析,从而更好地理解集合的特征和属性。
决策支持:韦恩图可以帮助人们作出决策,在不同集合之间找出共同点和不同点,从而更好地制定策略和计划。


一、数据准备

# 需要根据自己的数据进行处理一下
library(readxl)
library(VennDiagram)
setwd('G:/R/TCGA/venn')
COVIN_24_wpi_DEGs <- read_xlsx('long_CONVID_19_deg.xlsx',sheet='24 wpi DEGs')
COVIN_16_wpi_DEGs <- read_xlsx('long_CONVID_19_deg.xlsx',sheet='16 wpi DEGs')
COVIN_12_wpi_DEGs <- read_xlsx('long_CONVID_19_deg.xlsx',sheet='12 wpi DEGs')# 这里做一个数据处理的演示
COVIN_12_wpi_DEGs <- read.csv('COVIN_12_wpi_DEGs.csv',header = T,row.names = 1)
COVIN_12_wpi_DEGs <- data.frame(COVIN_12_wpi_DEGs$external_gene_name, row.names = rownames(COVIN_12_wpi_DEGs))
colnames(COVIN_12_wpi_DEGs) <- c('gene_id')
write.csv(COVIN_12_wpi_DEGs,'COVIN_12_wpi_gene.csv')# 转置
set1 <- t(COVIN_12_wpi_DEGs)
set2 <- t(COVIN_16_wpi_DEGs)
set3 <- t(COVIN_24_wpi_DEGs)
head(set1)
#         gene_id
# OTUD1     OTUD1
# RTKN2     RTKN2
# FAM107A FAM107A
# EPAS1     EPAS1
# SPAAR     SPAAR
# SEMA3G   SEMA3G

二、可视化

1.二维

代码如下(示例):

# 二维
p <- venn.diagram(x=list(set1,set2),scaled = F, # 根据比例显示大小alpha= 0.5, #透明度lwd=1,lty=1,col=c('#FFFFCC','#CCFFFF'), #圆圈线条粗细、形状、颜色;1 实线, 2 虚线, blank无线条label.col ='black' , # 数字颜色abel.col=c('#FFFFCC','#CCFFFF',......)根据不同颜色显示数值颜色cex = 2, # 数字大小fontface = "bold",  # 字体粗细;加粗boldfill=c('#FFFFCC','#CCFFFF'), # 填充色 配色https://www.58pic.com/category.names = c("LUAD", "COVID") , #标签名cat.dist = 0.02, # 标签距离圆圈的远近cat.pos = -180, # 标签相对于圆圈的角度cat.pos = c(-10, 10, 135)cat.cex = 2, #标签字体大小cat.fontface = "bold",  # 标签字体加粗cat.col='black' ,   #cat.col=c('#FFFFCC','#CCFFFF',.....)根据相应颜色改变标签颜色cat.default.pos = "outer",  # 标签位置, outer内;text 外output=TRUE,filename='LUAD_COVID_wpi.png',# 文件保存imagetype="png",  # 类型(tiff png svg)resolution = 400,  # 分辨率compression = "lzw"# 压缩算法
)

请添加图片描述

2.三维

代码如下(示例):

venn.diagram(x=list(set1,set2,set3),category.names = c("12_wpi", "16_wpi",'24_wpi') , #标签名filename='LUAD_COVID.png',# 文件保存output=TRUE,main = "COVID_DEGs",# 设置输出参数imagetype="png",  # 类型(tiff png svg)resolution = 400,  # 分辨率compression = "lzw", # 压缩算法# 圆的调整scaled = F, # 根据比例显示大小alpha= 0.5, #透明度lwd=1, # 描边粗细lty=1,col=c('#FFFFCC','#CCFFFF',"#FFCCCC"), #圆圈线条粗细、形状、颜色;1 实线, 2 虚线, blank无线条label.col ='black' , # 数字颜色abel.col=c('#FFFFCC','#CCFFFF',......)根据不同颜色显示数值颜色# 文字大小cex = 1, # 字体大小fontface = "bold",  # 字体粗细;加粗boldfill=c('#FFFFCC','#CCFFFF',"#FFCCCC"), # 填充色 配色https://www.58pic.com/#每个集合的名称:cat.cex=1.2,cat.default.pos="outer", # 集合名称位置:outer --外部;text --内部cat.pos=c(-27,27,180), # 集合名称分别在圈圈的什么角度cat.dist=c(0.055,0.055,0.055), # 外部多少距离cat.col='black' ,   # cat.col=c('#FFFFCC','#CCFFFF',.....)根据相应颜色改变标签颜色cat.fontfamily="sans",rotation=1 # 旋转
)

请添加图片描述

3.数据保存

# 查看交集详情,并导出结果
# 只导出交集基因
inter <- get.venn.partitions(LUAD_COVID)inter <- get.venn.partitions(list(set1,set2,set3))# i=1
values <- as.data.frame(inter[[i,'..values..']])
colnames(values) <- c('gene_name')
write.csv(values, "all_common_difference_gene.csv")# 导出全部
inter <- get.venn.partitions(LUAD_COVID)
for (i in 1:nrow(inter)) inter[i,'values'] <- paste(inter[[i,'..values..']], collapse = '|')inter <- subset(inter, select = -..values.. )
inter <- subset(inter, select = -..set.. )
write.table(inter, "result_16_wpi.csv", row.names = FALSE, sep = ',', quote = FALSE)

总结

本文用到的数据如有需要,请私我发送!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/54081.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mac笔记本上查看/user/目录下的文件的几种方法

在Mac笔记本上查看/user/下的文件&#xff0c;可以通过多种方法实现。以下是一些常见的方法&#xff1a; 一、使用Finder 打开Finder&#xff1a;点击Dock栏中的Finder图标&#xff0c;或者使用快捷键Command F。 导航到用户目录&#xff1a; 在Finder的菜单栏中&#xff0…

简单了解微服务--黑马(在更)

认识微服务 单体架构 不适合大型复杂项目 微服务架构 将单体结构的各个功能模块拆分为多个独立的项目 拆取的独立项目分别开发&#xff0c;在部署的时候也要分别去编译打包&#xff0c;分别去部署&#xff0c;不同的模块部署在不同的服务器上&#xff0c;对外提供不同的功能…

2024ICPC网络赛1: C. Permutation Counting 4

题意&#xff1a; 给定 n n n个区间 [ L i , R i ] [L_i,R_i] [Li​,Ri​]设集合 A { { p i } ∣ p i 为排列&#xff0c; L i < p i < R i } A\{ \{ p_i\} | p_i为排列&#xff0c;Li<p_i<R_i\} A{{pi​}∣pi​为排列&#xff0c;Li<pi​<Ri​}&#xff…

MySQL底层为什么选择用B+树作为索引

首先&#xff0c;我们来想想为什么这么多数据结构&#xff0c;为什么要用树这种数据结构&#xff1f; 众多的数据结构在逻辑层面可分为&#xff1a;线性结构 和 非线性结构。 线性结构有&#xff1a;数组、链表&#xff0c;基于它们衍生出的有哈希表&#xff08;哈希表也称散…

[网络]从零开始的计算机网络基础知识讲解

一、本次教程的目的 本次教程我只会带大叫了解网络的基础知识&#xff0c;了解网络请求的基本原理&#xff0c;为后面文章中可能会用到网络知识做铺垫。本次我们只会接触到网络相关的应用层&#xff0c;并不涉及协议的具体实现和数据转发的规则。也就是说&#xff0c;这篇教程是…

Windows11:解决近期更新补丁后无法上网的问题

点击开始菜单&#xff0c;打开设置&#xff0c;点击Windows更新&#xff0c;点击更新历史记录&#xff0c;点击“卸载更新“&#xff0c;找到这个补丁更新卸载即可。

【Linux】网络层协议——IP

一、IP协议 在前面&#xff0c;我们学习了应用层和传输层&#xff0c;接下来&#xff0c;我们来学习网络层&#xff0c;网络层的主要功能是在复杂的网络环境中确定一个合适的路由。 1.1 IP协议的基本概念 主机&#xff1a;配有IP地址&#xff0c;有可以进行路由控制的设备路由…

香港电讯SASE解决方案:终端与云端的安全护航

现代工作模式存在网络安全隐忧 随着远程办公模式的普及&#xff0c;越来越多员工使用各种个人终端设备&#xff0c;如台式电脑、笔记本电脑、智能手机、平板电脑等进行协作办公。然而&#xff0c;由于IT人才短缺和员工隐私等因素&#xff0c;许多企业无法统一管理端点设备的安…

【自动驾驶】决策规划算法(一)决策规划仿真平台搭建 | Matlab + Prescan + Carsim 联合仿真基本操作

写在前面&#xff1a; &#x1f31f; 欢迎光临 清流君 的博客小天地&#xff0c;这里是我分享技术与心得的温馨角落。&#x1f4dd; 个人主页&#xff1a;清流君_CSDN博客&#xff0c;期待与您一同探索 移动机器人 领域的无限可能。 &#x1f50d; 本文系 清流君 原创之作&…

开源免费的工贸一体行业ERP管理系统

引言 在当今数字化浪潮汹涌澎湃的时代&#xff0c;中小企业面临着前所未有的挑战与机遇。如何实现数字化转型发展&#xff0c;成为了众多中小企业主心头的大事。 据相关数据显示&#xff0c;目前我国中小企业数量已经超过了 4000 万户&#xff0c;然而成功实现数字化转型的比例…

『功能项目』按G键持续显示对话内容【61】

本章项目成果展示 我们打开上一篇60靠近Npc显示可对话标识的项目&#xff0c; 本章要做的事情是当靠近Npc按G键显示内容后&#xff0c;再按G键实现两个人的对话显示功能 首先将以下资源图片放进Art文件夹中并设置为精灵模式 在桌面上创建一个文本 讲一下对话内容复制到文本中 …

k8s(kubernetes)的PV / PVC / StorageClass(理论+实践)

NFS总是不支持PVC扩容 先来个一句话总结&#xff1a;PV、PVC是K8S用来做存储管理的资源对象&#xff0c;它们让存储资源的使用变得可控&#xff0c;从而保障系统的稳定性、可靠性。StorageClass则是为了减少人工的工作量而去自动化创建PV的组件。所有Pod使用存储只有一个原则&…

pgrouting实战应用

1&#xff09;下载地区地区数据&#xff08;下载数据是XYZM 四位数据&#xff09; 2&#xff09;下载裁剪行政区数据 3&#xff09;使用arcgis pro添加路网数据和行政区数据 4&#xff09;裁剪数据&#xff0c;仅历下行政区路网 5&#xff09;arcgis pro要素转线&#xff0…

GPT-4-Turbo 和 Claude-3.5-Sonnet 图片识别出答题的是否正确 进行比较

1、比较的图片&#xff1a; 使用GPT-4-Turbo 输入的 提问&#xff1a; 识别图片中的印刷字和手写字&#xff0c;如果写错的给一个正确答案 图片 回复&#xff1a; 在图片中&#xff0c;印刷字显示的是一系列的英语填空练习题&#xff0c;而手写字则是填入空白处的答案。以…

Eclipse折叠if、else、try catch的{}

下载插件com.cb.eclipse.folding_1.0.6.jar。将插件放到eclipse的dropins文件夹中。修改配置&#xff0c;然后保存&#xff0c;重启Eclipse即可。

openstack之cinder介绍

概念 cinder 为虚拟机提供管理块存储服务。支持的文件系统&#xff1a;lvm、iscsi、nfs、san、RBD 组件构成及功能介绍 cinder api&#xff1a;在控制节点运行&#xff0c;管理服务的接口&#xff0c;被命令行、其他组件调用&#xff1b; cinder scheduler&#xff1a;类似n…

Ruoyi Cloud K8s 部署

本文视频版本:https://www.bilibili.com/video/BV1xF4Se3Esv 参考 https://blog.csdn.net/Equent/article/details/137779505 https://blog.csdn.net/weixin_48711696/article/details/138117392 https://zhuanlan.zhihu.com/p/470647732 https://gitee.com/y_project/Ruo…

初学Linux(学习笔记)

初学Linux&#xff08;学习笔记&#xff09; 前言 本文跳过了Linux前期的环境准备&#xff0c;直接从知识点和指令开始。 知识点&#xff1a; 1.目录文件夹&#xff08;Windows&#xff09; 2.文件内容属性 3.在Windows当中区分文件类型是通过后缀&#xff0c;而Linux是通过…

AtCoder ABC370 A-D题解

比赛链接:ABC370 AT 上 400 分寄。 Problem A: Code #include <bits/stdc.h> using namespace std; int main(){int L,R;cin>>L>>R;if(LR)cout<<"Invalid"<<endl;else if(L1)cout<<"YES"<<endl;elsecout<…

SAP到底是谁的系统?business or IT?

作为SAP顾问&#xff0c;我们可能常常听到业务部门的用户说“SAP是你们的系统&#xff0c;你们要把这些问题搞定”。那么到底这个SAP系统是SAP顾问所在的IT部门的吗&#xff1f;这其实是一个很好的问题&#xff0c;反映出企业对于与SAP系统相关问题的职责划分。每个企业的情况还…