R语言绘制维恩图ggvenn示例详解
目录
- 引言
- 1.安装
- 2.基础用法
- 3.图形美化
- 4.提取交集部分并输出
引言
韦恩图,Venn diagram,常用图的一种,用来展示集合之间的特异性和共同性。现在有很多在线的网站都可以绘制,但是R来画也方便,其中ggvenn是基于ggplot2的专门绘制韦恩图的R包。
官方网站:https://github.com/yanlinlin82/ggvenn
1.安装
ggvenn在CRAN上,直接用Install.packages就可以完成安装:
> install.packages("ggvenn") > library(ggvenn)
2.基础用法
ggvenn支持list和data.frame两种数据格式。这里以三个基因文件为例:
读取三个基因文件:
> set1<-read.csv("gene_a.csv") > set2<-read.csv("gene_b.csv") > set3<-read.csv("gene_c.csv")
提取每个文件的基因id,创建list:
> dat <- list( A = set1$gene_id, B = set2$gene_id, C = set3$gene_id)
绘图:
> ggvenn(dat)
绘制部分list:
> ggvenn(dat, c("A", "B"))
3.图形美化
填充
- fill_color:填充颜色
- fill_alpha:填充透明度
边框
- stroke_color:边框颜色
- stroke_alpha:边框透明度
- stroke_size:边框粗细
- stroke_linetype:边框线的类型
集合名
- set_name_color:集合名颜色
- set_name_size:集合名字号
集合内文本
- text_color:文本颜色
- text_size:文本字号
百分比
- show_percentage:TRUE or FALSE
> ggvenn(dat,show_percentage = T, stroke_color = "white", stroke_size = 0.5, fill_color = c("#E41A1C","#1E90FF","#FF8C00"), set_name_color =c("#E41A1C","#1E90FF","#FF8C00"), set_name_size = 15,text_size=6)
4.提取交集部分并输出
> A_B <- as.data.frame(intersect(set1$gene_id, set2$gene_id)) > write.csv(A_B,"A_B_common_gene.csv",row.names = F)
以上就是R语言绘制维恩图ggvenn示例详解的详细内容,更多关于R绘制维恩图ggvenn的资料请关注我们其它相关文章!
相关推荐
-
R语言绘制小提琴图violin plot实现示例
目录 Step1.绘图数据的准备 Step2.绘图数据的读取 Step3.绘图所需package的安装.调用 Step4.绘图 Step5.美化 即便小仙同学决定学习R语言来提升自己作图的“逼格”的时候,心中还有有些疑虑的(嘿嘿,我这么懒,可不愿意做无用功了?).仔细想了想,貌似又找到了两个学习R的理由. 一是R可以帮助我们避免重复劳动,实现“一劳永逸”的终极梦想.尽管非常不想承认这一事实,在科研的过程中,小仙同学制造出了大量“无效”的数据(sign…),但也不得不“绞尽脑汁”.“竭尽全力”地进
-
R语言绘制Bubble Matrix气泡矩阵图
目录 Step1.绘图数据的准备 Step2.绘图数据的读取 Step3.绘图所需package的安装.调用 Step4.绘图 Step5.美化 又是一个好久不见,朋友们你们最近还好吗!最近小仙同学刚经历了人生中的一个重要的里程碑——延毕.在预料之中.又如期而至的两个字,小仙心里也是很复杂,可终究跟“毕业”二字沾了边,就当它是好事啦! 今天要给大家介绍的是气泡矩阵图,要模仿的图形如下.小仙同学一直有一个困惑:什么样的数据应该画什么类型的图,才能精确地展示数据表达出自己的意思?对于气泡矩阵图,小仙
-
R语言数可视化Split violin plot小提琴图绘制方法
最近小仙同学在好几篇文献里看到了这种小提琴图,暂时就肤浅地认为这是作者为了更好地比较对照组与实验组的差别,所以将同一个基因的小提琴图各画了一半,放在一起.为了跟上可视化的潮流,小仙也来尝试画一下这个没查到正经名字的图. Step1. 绘图数据的准备 首先要把你想要绘图的数据调整成R语言可以识别的格式,建议大家在excel中保存成csv格式.作图数据格式如下: Step2. 绘图数据的读取 data<-read.csv("your file path", header = T) #
-
R语言绘制line plot线图示例详解
目录 Step1.绘图数据的准备 Step2.绘图数据的读取 Step3.绘图所需package的安装.调用 Step4.绘图 最近小仙同学在Nature Cell Biology上看到了这样一张图,很常见的折线图画成这个样子——原来很常见的图标类型也可以“焕发新春”! 今天小仙同学就尝试用R复刻一张类似的折线图. Step1. 绘图数据的准备 首先要把你想要绘图的数据调整成R语言可以识别的格式,建议大家在excel中保存成csv格式.数据的格式如下图:一列表示一种变量,最后一列是每一行的行名.
-
R语言两组变量特征相关关系热图绘制画法
目录 准备数据 简单热图 只对列进行聚类 将相关系数显示在图上 在图上加上显著性标记 准备数据 两组变量的数据可以像下面这样处理,分别保存在两个csv文件中. > # 导入数据及数据预处理 > setwd("D:/weixin/") > rows <- read.csv("rows.csv") > cols <- read.csv("cols.csv") > str(rows) 'data.frame':
-
R语言绘制维恩图ggvenn示例详解
目录 引言 1.安装 2.基础用法 3.图形美化 4.提取交集部分并输出 引言 韦恩图,Venn diagram,常用图的一种,用来展示集合之间的特异性和共同性.现在有很多在线的网站都可以绘制,但是R来画也方便,其中ggvenn是基于ggplot2的专门绘制韦恩图的R包. 官方网站:https://github.com/yanlinlin82/ggvenn 1.安装 ggvenn在CRAN上,直接用Install.packages就可以完成安装: > install.packages("g
-
R语言时间序列TAR阈值自回归模型示例详解
为了方便起见,这些模型通常简称为TAR模型.这些模型捕获了线性时间序列模型无法捕获的行为,例如周期,幅度相关的频率和跳跃现象.Tong和Lim(1980)使用阈值模型表明,该模型能够发现黑子数据出现的不对称周期性行为. 一阶TAR模型的示例: σ是噪声标准偏差,Yt-1是阈值变量,r是阈值参数, {et}是具有零均值和单位方差的iid随机变量序列. 每个线性子模型都称为一个机制.上面是两个机制的模型. 考虑以下简单的一阶TAR模型: #低机制参数 i1 = 0.3 p1 = 0.5 s1 = 1
-
R语言编程重读微积分泰勒级数示例详解
一 理解极限 二 微分学 泰勒级数 如果我是泰勒,我会把思考的起点建立在这样的一个等式上 那么接下来我们直观地感受一下Taylor级数时如何逐渐逼近某个函数的.简单起见,在此选择 sinx作为被拟合的函数. library(ggplot2) library(gganimate) library(av) library(tibble) x = seq(-pi,pi,0.1) n = length(x) xs = rep(x,11) ys = rep(sin(0),n) ts = rep(0,n)
-
R语言绘制折线图实例分析
折线图是通过在它们之间绘制线段来连接一系列点的图. 这些点在它们的坐标(通常是x坐标)值之一中排序. 折线图通常用于识别数据中的趋势. R语言中的plot()函数用于创建折线图. 语法 在R语言中创建折线图的基本语法是 - plot(v,type,col,xlab,ylab) 以下是所使用的参数的描述 - v是包含数值的向量. 类型采用值"p"仅绘制点,"l"仅绘制线和"o"绘制点和线. xlab是x轴的标签. ylab是y轴的标签. main是
-
R语言绘制Vonoroi图
deldir包绘制Voronoi图 #install.packages("deldir") library(deldir) # data set.seed(1) x <- runif(60) y <- runif(60) # Calculate Voronoi Tesselation and tiles tesselation <- deldir(x, y) tiles <- tile.list(tesselation) plot(tiles, pch = 19
-
使用R语言绘制棒棒糖图火柴杆图教程
目录 使用原生ggplot方法 1)生成数据 使用ggpubr包中的ggdotchart() 参考 使用原生ggplot方法 最容易也是最简单想到的方法是直接使用ggplot2包进行更新,这里需要使用ggplot本身的特性,通过图层叠加的方式,进行最终棒棒糖图的展现.(宽度极窄的柱状图配合散点图即可呈现) 1)生成数据 下面我们的展示均以此份数据为例: library(ggplot2) # Load data data("mtcars") dfm <- mtcars # Conv
-
R语言绘制尺子的实现示例
本文使用基本的绘图命令plot.rect.segments.text绘制一把长10厘米的直尺.话不多说上教程. 1.定义基本单位 xcm <- 0.07 ycm <- 0.07 2.首先使用plot绘制一个空白画布 plot(0:1, 0:1, type = "n", axes = F, ann = F) 3.绘制一个灰色的底作为直尺的影子 rect(0 + 0.2*xcm,0 - 0.2*ycm,0.95 + 0.2*xcm,0.15 - 0.2*ycm, col=&qu
-
Python绘制惊艳的桑基图的示例详解
目录 桑基图简介 什么是桑基图? 如何绘制桑基图? 桑基图绘图基础 调整节点位置和图表宽度 添加有意义的悬停标签 桑基图简介 很多时候,我们需要一种必须可视化数据如何在实体之间流动的情况.例如,以居民如何从一个国家迁移到另一个国家为例.这里演示了有多少居民从英格兰迁移到北爱尔兰.苏格兰和威尔士. 从这个 桑基图 (Sankey)可视化中可以明显看出,从England迁移到Wales的居民多于从Scotland或Northern Ireland迁移的居民. 什么是桑基图? 桑基图通常描绘 从一个实
-
R语言绘制Vonoroi图的完整代码
deldir包绘制Voronoi图 #install.packages("deldir") library(deldir) # data set.seed(1) x <- runif(60) y <- runif(60) # Calculate Voronoi Tesselation and tiles tesselation <- deldir(x, y) tiles <- tile.list(tesselation) plot(tiles, pch = 19
-
Python绘制3D立体花朵示例详解
目录 动态展示 导读 源码和详解 荷花 玫瑰花 桃花 月季 动态展示 这是一个动态图哦 导读 兄弟们可以收藏一下哦!情人节可以送出去,肥学找了几朵python写的花给封装好送给大家.不是多炫酷但是有足够的用心哦.别忘了点赞呀我也就不细说了,来吧展示! 源码和详解 荷花 def lotus(): fig = plt.figure(figsize=(10,7),facecolor='black',clear=True) ax = fig.gca(projection='3d') [x, t] = n
随机推荐
- Angular中封装fancyBox(图片预览)遇到问题小结
- 黑客必备技巧 谈黑客攻击前的试探技巧
- 深入理解Java中的final关键字_动力节点Java学院整理
- onkeydown事件解决按回车键直接提交数据的需求
- php实现的mysqldb读写分离操作类示例
- 超简单的qps统计方法(推荐)
- php中计算中文字符串长度、截取中文字符串的函数代码
- JQuery的Ajax请求实现局部刷新的简单实例
- 总结Python编程中函数的使用要点
- 浅谈python import引入不同路径下的模块
- Jquery自定义button按钮的几种方法
- 最短的IE判断代码
- JavaScript 上万关键字瞬间匹配实现代码
- Javascript 构造函数详解
- 微信小程序 wx.uploadFile在安卓手机上面the same task is working问题解决
- Linux下虚拟域名的实现(1)
- 百度地图JavascriptApi Marker平滑移动及车头指向行径方向
- 详解C语言gets()函数与它的替代者fgets()函数
- Android编程计算函数时间戳的相关方法总结
- Windows下python3.7安装教程