再肝一个R包!一行代码绘制精美火山图!
一行代码绘制火山图的R包诞生了!在过去的一年中,师兄先后生信绘图系列和高分SCI复现系列中更新了多种不同的火山图的绘制方法,包括普通的火山图、渐变火山图、以及包含GO通路信息的火山图!但是很多小伙伴反应,代码太难,看不懂,套在自己的数据上总是出错!于是这么为粉丝着想的师兄,又肝了一个晚上,将之前的代码整理封装成了现在的R包 –
ggVolcano
.有了它,大家只需要安装载入后,就可以实现一行代码绘制火山图了,而且该包还配备和很多可供调节的参数,方便大家进行个性化设置,如:修改颜色,描边,散点大小等等!
为了方便大家更好的使用,师兄也对这个R包的重要函数和参数做了很清晰的说明!希望大家多多点赞、在看支持!点赞越多,师兄的生产就越快哈!开发更好的工具,帮助大家实现更加精美的可视化效果!
ggVolcano简介
ggVolcano
的目标是帮助用户更轻松地制作出漂亮的火山图,该包主要配置了三个函数:
- 普通火山图:
ggvolcano
- 渐变色火山图:
gradual_volcano
- GO通路火山图:
term_volcano
附上师兄的github链接,有兴趣探索学习源码的可以参考:https://github.com/BioSenior/ggVolcano
安装
# install.packages("devtools")
devtools::install_github("BioSenior/ggVolcano")
使用ggvolcano
函数制作一张普通的火山图。
基础用法
- 确保你有一个包含差异表达基因信息的DEG结果数据(数据需要包括:GeneName、Log2FC、pValue、FDR)。
- 如果你的数据没有名为 "regulate "的列,你可以使用
add_regulate
函数来添加,使用方法如下。 - 使用函数
ggvolcano
来制作一般的火山图。你可以使用?ggvolcano
来查看该函数的参数。
library(ggVolcano)## basic example code
# load the data
data(deg_data)# use the function -- add_regulate to add a regulate column
# to the DEG result data.
data <- add_regulate(deg_data, log2FC_name = "log2FoldChange",fdr_name = "padj",log2FC = 1, fdr = 0.05)# plot
ggvolcano(data, x = "log2FoldChange", y = "padj",label = "row", label_number = 10, output = FALSE)
- 你必须将
x
和y
参数设置为你数据中的相对应的列名。- 如果你想在这些点上添加标签,请将
label
参数设置为您数据中相应的列名。此外label_number
参数可以调整显示的标签数量。(按照FDR值从小到大排序,选择前label_number
个基因)。
修改散点的颜色和描边
# Change the fill and color manually:
p1 <- ggvolcano(data, x = "log2FoldChange", y = "padj",fills = c("#e94234","#b4b4d8","#269846"),colors = c("#e94234","#b4b4d8","#269846"),label = "row", label_number = 10, output = FALSE)p2 <- ggvolcano(data, x = "log2FoldChange", y = "padj",label = "row", label_number = 10, output = FALSE)+ggsci::scale_color_aaas()+ggsci::scale_fill_aaas()
#> Scale for 'colour' is already present. Adding another scale for 'colour', which
#> will replace the existing scale.
#> Scale for 'fill' is already present. Adding another scale for 'fill', which
#> will replace the existing scale.library(patchwork)
p1|p2
使用gradual_volcano
函数来制作一个渐变色火山图。
基础用法
- 确保你有一个包含差异表达基因信息的DEG结果数据(数据需要包括:GeneName、Log2FC、pValue、FDR)。
- 如果你的数据没有名为 "regulate "的列,你可以使用
add_regulate
函数来添加,使用方法如下。 - 使用函数
gradual_volcano
来制作一般的火山图。你可以使用?gradual_volcano
来查看该函数的参数。
# plot
gradual_volcano(deg_data, x = "log2FoldChange", y = "padj",label = "row", label_number = 10, output = FALSE)
修改散点的颜色和描边
library(RColorBrewer)# Change the fill and color manually:
p1 <- gradual_volcano(data, x = "log2FoldChange", y = "padj",fills = brewer.pal(5, "RdYlBu"),colors = brewer.pal(8, "RdYlBu"),label = "row", label_number = 10, output = FALSE)p2 <- gradual_volcano(data, x = "log2FoldChange", y = "padj",label = "row", label_number = 10, output = FALSE)+ggsci::scale_color_gsea()+ggsci::scale_fill_gsea()
#> Scale for 'colour' is already present. Adding another scale for 'colour', which
#> will replace the existing scale.
#> Scale for 'fill' is already present. Adding another scale for 'fill', which
#> will replace the existing scale.library(patchwork)
p1|p2
- 如果你想调整点的大小范围,你可以使用
pointSizeRange = c(min_size, max_size)
。其中min_size, max_size
代表散点的最小尺寸和最大尺寸。
使用term_volcano
函数来绘制GO通路相关火山图。
基本用法
- 确保你有一个包含差异表达基因信息的DEG结果数据(数据需要包括:GeneName、Log2FC、pValue、FDR)。
- 除了DEG结果数据,你还需要一个通路数据,这是一个包含一些基因的GO通路信息的两列数据框。
- 如果你的数据没有名为 "regulate "的列,你可以使用
add_regulate
函数来添加,使用方法如下。 - 使用函数
term_Volcano
来制作GO通路相关火山图。你可以使用?term_Volcano
来查看该函数的参数。
data("term_data")# plot
term_volcano(deg_data, term_data,x = "log2FoldChange", y = "padj",label = "row", label_number = 10, output = FALSE)
修改散点颜色和描边
library(RColorBrewer)# Change the fill and color manually:
deg_point_fill <- brewer.pal(5, "RdYlBu")
names(deg_point_fill) <- unique(term_data$term)term_volcano(data, term_data,x = "log2FoldChange", y = "padj",normal_point_color = "#75aadb",deg_point_fill = deg_point_fill,deg_point_color = "grey",legend_background_fill = "#deeffc",label = "row", label_number = 10, output = FALSE)
以上就是本期的全部内容啦!欢迎点赞,点在看!师兄会尽快更新哦!制作不易,你的打赏将成为师兄继续更新的十足动力!
最后再附上师兄的github链接,有兴趣探索学习源码的可以参考:https://github.com/BioSenior/ggGantt
往期文章
生信常用分析图形绘制01 – 各种类型的热图!你学会了吗?
生信常用分析图形绘制02 – 解锁火山图真谛!
生信常用分析图形绘制03 – 富集分析圈图
再肝一个R包!一行代码绘制精美火山图!相关推荐
- 把函数包起来就是一个R包 - 完整开发指南
生物信息学习的正确姿势 NGS系列文章包括NGS基础.高颜值在线绘图和分析.转录组分析 (Nature重磅综述|关于RNA-seq你想知道的全在这).ChIP-seq分析 (ChIP-seq基本分析流 ...
- 一个R包玩转单细胞免疫组库分析,还能与Seurat无缝对接
单细胞免疫组库数据分析 NGS系列文章包括NGS基础.转录组分析 (Nature重磅综述|关于RNA-seq你想知道的全在这).ChIP-seq分析 (ChIP-seq基本分析流程).单细胞测序分析 ...
- 一行代码绘制高分SCI火山图
一.概述 在近半年中,我读了很多的高分SCI文章,很多文章中都有多种不同的火山图,包括「普通的火山图.渐变火山图.以及包含GO通路信息的火山图」! 经过一段时间的文献阅读和资料查询,终于找到了一个好用 ...
- 安装pkgconfig_一个R包怎么也安装不上,憋着急!
今天是生信星球陪你的第505天 大神一句话,菜鸟跑半年.我不是大神,但我可以缩短你走弯路的半年~ 就像歌儿唱的那样,如果你不知道该往哪儿走,就留在这学点生信好不好~ 这里有豆豆和花花的学习历程,从新 ...
- R语言ggplot2可视化绘制Marimekko/Mosaic图实战:自定义函数绘制Marimekko/Mosaic图(添加数值、标题、色彩配置)、ggmosaic包绘制Marimekko图
R语言ggplot2可视化绘制Marimekko/Mosaic图实战:自定义函数绘制Marimekko/Mosaic图(添加数值.标题.色彩配置).ggmosaic包绘制Marimekko图 目录
- 在Rstudio中点一点就出来了一个R包
生物信息学习的正确姿势 NGS系列文章包括NGS基础.高颜值在线绘图和分析.转录组分析 (Nature重磅综述|关于RNA-seq你想知道的全在这).ChIP-seq分析 (ChIP-seq基本分析流 ...
- r语言绘制精美pcoa图_R语言绘制交互式热图
热图 通过热图可以简单地聚合大量数据,并使用一种渐进的色带来优雅地表现,最终效果一般优于离散点的直接显示,可以很直观地展现空间数据的疏密程度或频率高低.但也由于很直观,热图在数据表现的准确性并不能保证 ...
- R语言ggplot2可视化绘制累积计数图(累加图,cumulative counts)
R语言ggplot2可视化绘制累积计数图(累加图,cumulative counts) 目录 R语言ggplot2可视化绘制累积计数图(累加图,cumulative counts)
- python中数据用折线图表示_使用PyQtGraph进行Python数据可视化:绘制精美折线图(以 上证指数走势为例)...
在前两篇文章中,我们介绍了: 在了解了基本的PyQtGraph模块绘制图形功能之后,我们通过几个常用常见的数据可视化图形来演示使用PyQtGraph进行Python数据可视化. 本篇,我们介绍使用Py ...
最新文章
- 虚拟机的操作系统的安装
- 牛客网刷题(纯java题型 181~210题)
- EF里查看/修改实体的当前值、原始值和数据库值以及重写SaveChanges方法记录实体状态...
- R语言学习 - 热图美化 (数值标准化和调整坐标轴顺序)
- mangTomany 自关联之个人感悟
- pandas AttributeError: ‘Styler‘ object has no attribute ‘style‘解决方法
- linux怎么获取目录名,linux下如何获取目录名?(四种方法)
- 《Android Studio开发实战 从零基础到App上线》源码运行问题解答
- Lintcode 730 所有子集的和
- html div 时间,HTML DIV
- 销售订单的 状态 变更
- Lingo软件入门【数学建模】
- 致敬学习者丨黑马2020年度TOP榜视频教程,一键领!
- 最新Latex安装详细教程
- 信息安全从业者工作规划及能力建设
- 【Unity3D插件】AnyPortrait插件分享《(二)制作角色动画》
- 首次!让我们出一个基于延迟的同行 IP 库数据评估来打个样~
- html中文网页设计作品
- Android逆向工程:MIUI系统大揭秘:去不掉的小米账号!
- Push rejected: Push master to origin/master was rejected by remote