零基础入门转录组数据分析——绘制差异火山图

news2024/12/26 21:15:27

零基础入门转录组数据分析——绘制差异火山图


差异分析的火山图(Volcano Plot)在生物信息学数据分析中,特别是在基因表达差异分析中,是一个非常直观和有用的工具。

本教程将从导入的数据结构开始,一步步带大家在R中绘制好看的火山图,最后对火山图进行解读,确保读者理解代码的同时学会解读火山图里的每个元素所代表的意思。

首先来看一下最终的火山图长啥样:
在这里插入图片描述



火山图的构建基于两个主要的度量指标:

基因表达对数2倍变化(Log2FoldChange):这个指标衡量了基因在不同组别之间的表达水平变化。正值表示基因表达上调,负值表示表达下调。

统计显著性(p.value/p.adj):这个指标是基因表达变化的p值,用于评估观察到的效应(如基因表达的变化)是否可能是由于随机误差引起的,通常认为P < 0.05则结果是显著的,并且更小的p.value/p.adj意味着变化更显著。

注:绘制差异火山图需要用到差异分析的结果

差异分析参考之前的教程:生信数据分析——limma差异分析和生信数据分析——DESeq2差异分析


本项目以GSE203346数据集(高通量测序数据)展示火山图绘制过程
实验分组:疾病组(18例),对照组(19例)
R版本:4.2.2
R包:tidyverse,lance,ggplot2,ggrepel	

废话不多说,代码如下:

设置工作空间:

rm(list = ls()) # 删除工作空间中所有的对象
setwd('/XX/XX/XX') # 设置工作路径
if(!dir.exists('./01_DEGs')){
   
  dir.create('./01_DEGs')
} # 判断该工作路径下是否存在名为01_DEGs的文件夹,如果不存在则创建,如果存在则pass
setwd('./01_DEGs/') # 设置路径到刚才新建的01_DEGs下

加载包:

library(tidyverse)
library(lance)
library(ggplot2)
library(ggrepel)

导入差异分析结果(limma/DESeq2都可以):

DEG <- read.csv('./GSE203346/DEG_all.csv', row.names = 1, check.names = F)
sig_diff <- read.csv('./GSE203346/DEG_sig.csv', row.names = 1, check.names = F)

DEG如下图所示, sig_diffDEG相似,只不过sig_diff少了那些没有显著差异的基因。
在这里插入图片描述

直接通过ggplot2绘制火山图(需要用到的是DEG中的log2FoldChangepvaluechange这三列)

ggplot(data = DEG, aes(x = log2FoldChange, y = -log10(pvalue), color = change)) +
  geom_point(size = 1.2, alpha = 0.4, na.rm = T)  # 设置点的大小和透明度

在这里插入图片描述

修改火山图中散点的颜色(上调基因用红色,下调基因用绿色,不显著基因用灰色表示)

ggplot(data = DEG, aes(x = log2FoldChange, y = -log10(pvalue), color = change)) +
  geom_point(size = 1.2, alpha = 0.4, na.rm = T)+  # 设置点的大小和透明度
  scale_color_manual(values = c("seagreen", "darkgray","firebrick3"))  # 设置颜色

在这里插入图片描述

给火山图横纵坐标加上阈值线:(横坐标是-0.5,0.5,纵坐标是-log10(0.05)

注:这个阈值线可以自己调整,要和差异分析的筛选阈值保持一直

ggplot(data = DEG, aes(x = log2FoldChange, y = -log10(pvalue), color = change)) +
  geom_point(size = 1.2, alpha = 0.4, na.rm = T)+  # 设置点的大小和透明度
  scale_color_manual(values = c("seagreen", "darkgray","firebrick3"))+ # 设置颜色
  geom_vline(xintercept = c(-0.5, 0.5), # 给x坐标轴的-0.5, 0.5处添加竖线
             lty = 4, # lty参数设置竖线的形式(直线,虚线等)
             col = "black", # 竖线颜色设置为黑色
             lwd = 0.4 # 设置线条的宽度
  ) +
  geom_hline(yintercept = -log10(0.05), # 给y坐标轴添加横线
             lty = 4, # lty参数设置竖线的形式(直线,虚线等)
             col = "black", # 竖线颜色设置为黑色
             lwd = 0.4 # 设置线条的宽度
  )

在这里插入图片描述

给火山图添加主题,并且设置x轴,y轴,标题以及副标题字体,大小和颜色(其中axis.text是坐标轴文本设置,axis.title是坐标轴标题设置,plot.title是标题设置

问:什么是主题?
答: ggplot2主题是一种系统,它允许对图像中的非数据元素进行精细的调整,而不会影响几何对象和标度等数据元素。主题不能改变图像的感官性质,但可以使图像更具美观,满足整体一致性的要求。

简单说:可以理解成是一个模板,这个模板对网格线、背景色、图片留白以及标题设置等都有统一的设定,可以在主题的基础上进一步修改字体,排版等一切元素

如下面代码中用到的就是theme_bw()这个主题,之后在theme()中修改主题的参数

ggplot(data = DEG, aes(x = log2FoldChange, y = -log10(pvalue), color = change)) +
  geom_point(size = 1.2, alpha = 0.4, na.rm = T)+  # 设置点的大小和透明度
  scale_color_manual(values = c("seagreen", "darkgray","firebrick3"))+ # 设置颜色
  geom_vline(xintercept = c(-0.5, 0.5), # 给x坐标轴的-0.5, 0.5处添加竖线
             lty = 4, # lty参数设置竖线的形式(直线&#x

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

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

相关文章

google浏览器网站不安全与网站的连接不安全怎么办?

使用google谷歌浏览器访问某些网站打开时google谷歌浏览器提示网站不安全,与网站的连接不安全,您之所以会看到此警告,是因为该网站不支持https造成的怎么办? 目录 1、打开谷歌google浏览器点击右上角【┇】找到设置

深入并广泛了解Redis常见的缓存使用问题

Redis 作为一门主流技术&#xff0c;缓存应用场景非常多&#xff0c;很多大中小厂的项目中都会使用redis作为缓存层使用。 但是Redis作为缓存&#xff0c;也会面临各种使用问题&#xff0c;比如数据一致性&#xff0c;缓存穿透&#xff0c;缓存击穿&#xff0c;缓存雪崩&#…

产品推荐 | 基于华为海思ARM+Xilinx FPGA双核的8路SDI高清视频图像处理平台

一、板卡概述 PCIE703 是我司自主研制的一款基于 PCIE 总线架构的高性能综 合视频图像处理平台&#xff0c;该平台采用 Xilinx 的高性能 Kintex UltraScale 系列 FPGA 加上华为海思的高性能视频处理器来实现。 华为海思的 HI3531DV200 是一款集成了 ARM A53 四核处理 器性能强…

HarmonyOS实战开发-Stage模型下Ability的创建和使用

介绍 本篇Codelab基于Stage模型&#xff0c;对Ability的创建和使用进行讲解。首先在课程中我们将带领大家使用DevEco Studio创建一个Stage模型Ability&#xff0c;并使用UIAbilityContext启动另一个Ability&#xff0c;然后借助Want&#xff0c;在Ability之间传递参数&#xf…

科技下乡:数字乡村改变乡村生活方式

在科技飞速发展的时代&#xff0c;数字化、信息化浪潮正以前所未有的速度席卷全球。在这场科技革命中&#xff0c;乡村不再是滞后的代名词&#xff0c;而是成为了数字乡村建设的热土。科技下乡&#xff0c;让数字乡村成为了改变乡村生活方式的重要力量。 一、科技下乡&#xf…

第三篇:3.2 广告可见性 - IAB与MRC及《增强现实广告效果测量指南1.0》

翻译计划 第一篇 概述—IAB与MRC及《增强现实广告效果测量指南》之目录、适用范围及术语第二篇 广告效果测量定义和其他矩阵之- 3.1 广告印象&#xff08;AD Impression&#xff09;第三篇 广告效果测量定义和其他矩阵之- 3.2 可见性 &#xff08;Viewability&#xf…

Spring 源码调试错误修复

Spring 源码调试错误修复 文章目录 Spring 源码调试错误修复1. fatal: not a git repository (or any of the parent directories): .git问题描述解决方案 2. fatal: Needed a single revision问题描述解决方案 1. fatal: not a git repository (or any of the parent director…

[实验报告]--基于端口安全

[实验报告] 目录 [实验报告] 一、项目背景 二、实验环境 三、项目规划设计 四、项目实施 五、验证项目成果 基于端口安全的 Jan16 公司网络组建 一、项目背景 Jan16 公司开发部为重要部门&#xff0c;所有员工使用指定的计算机工作&#xff0c;为防止员工或访客使 用个…

电源电路-变压器电路分析

从电路结构看这是电源模块&#xff0c;主页面是变压器一次侧电路。 电路简单分析如下&#xff1a; 1.变压器T2的1-3是一次侧输入引脚&#xff0c;5-6是一次侧输出引脚&#xff0c;看电路结构是悬空的未使用&#xff1b; 2.T2的1-3之间的器件&#xff08;D116,C605,D114,C573…

基于springboot的家庭理财管理系统的开发与实现

摘 要 在这科技不断的进步&#xff0c;让我们的生活改变了很多&#xff0c;信息技术的迅速发展&#xff0c;使各种行业在信息技术应用方面变得非常普遍。信息时代的到来&#xff0c;已成为一种必然趋势。本系统的标题是基于B/S模式的家庭理财系统的设计开发&#xff0c;其目的…

东特科技现已加入2024第13届国际生物发酵产品与技术装备展

参展企业介绍 温州东特科技有限公司是一家集设计、生产、销售及服务为一体的卫生级流体设备企业。专业从事各种乳食品、制药、化工、啤酒设备、不锈钢卫生级阀门&#xff0c;管件&#xff0c;视镜&#xff0c;及非标配件定制等产品的销售与服务。先进的设计理念专业的技术优势一…

LLM推理入门指南②:深入解析KV缓存

在本系列文章《LLM推理入门指南①&#xff1a;文本生成的初始化与解码阶段》中&#xff0c;作者对Transformer解码器的文本生成算法进行了高层次概述&#xff0c;着重介绍了两个阶段&#xff1a;单步初始化阶段&#xff0c;即提示的处理阶段&#xff0c;和逐个生成补全词元的多…

vue实现把Ox格式颜色值转换成rgb渐变颜色值(开箱即用)

图示&#xff1a; 核心代码&#xff1a; //将0x格式的颜色转换为Hex格式&#xff0c;并计算插值返回rgb颜色 Vue.prototype.$convertToHex function (colorCode1, colorCode2, amount) {// 确保输入是字符串&#xff0c;并检查是否以0x开头let newCode1 let newCode2 if (t…

python统计分析——假设概念、错误、p值和样本量

参考资料&#xff1a;python统计分析【托马斯】 1、例子 假设你在经营一家私立教育机构&#xff0c;你的合同显示&#xff1a;如果全国平均水平时100分时&#xff0c;你的学生在期末考试中得了110分&#xff0c;你就能获得奖金&#xff1b;若结果明显降低&#xff0c;你就会失…

听了中国电信关闭Wi-Fi双频合一功能之后,到底该连接2.4GHz还是5GHz频段?

前言 前段时间沸沸扬扬的关闭双频合一建议&#xff0c;小白也尝试关闭了一下&#xff0c;网络确实是好了不少。 有小伙伴还是有点疑虑&#xff0c;中国电信说的关闭Wi-Fi双频合一功能真的有用吗&#xff1f;点击下方蓝字一探究竟&#xff01; 中国电信建议关闭路由器的双频合一…

【Go】四、包名、访问范围控制、标识符、运算符

文章目录 1、_2、包名3、命名大小影响可访问范围4、运算符5、获取终端输入 1、_ 下划线"_"本身在Go中是一个特殊的标识符&#xff0c;称为空标识符用于忽略某个值 1&#xff09;忽略导入的没使用的包 2&#xff09;忽略某个返回值 2、包名 main包是程序的入口包&a…

2024最新华为OD机试试题库全 -【两个字符串间的最短路径问题】- C卷

1. 🌈题目详情 1.1 ⚠️题目 给定两个字符串,分别为字符串 A 与字符串 B。 例如 A字符串为 “ABCABBA”,B字符串为 “CBABAC” 可以得到下图 m * n 的二维数组,定义原点为(0,0),终点为(m,n),水平与垂直的每一条边距离为1,映射成坐标系如下图。 从原点 (0,0) 到 (0,…

Matlab与数学计算

原文地址&#xff1a;Matlab与数学计算 - Pleasure的博客 下面是正文内容&#xff1a; 前言 这是一篇笔记。主要用于介绍MatLab的作用以及其作为数学工具的使用方法。 目的是总结学校课件复习自用&#xff0c;但是不可能像相关的书籍那么系统全面&#xff0c;力求简单明了。都…

VsCode正确解决vue3+Eslint+prettier+Vetur的配置冲突

手把手教你VsCode正确解决vue3EslintprettierVetur的配置冲突 VsCode正确解决vue3EslintprettierVetur的配置冲突Eslint文档查看和修改规则&#xff1a;step1&#xff1a;首先快速浏览下规则简要setp2: ctrlF 搜索你要配置规则的英文名&#xff0c;例如attributesetp3: 修改配置…

LeetCode 热题 100 题解(一):哈希部分

《LeetCode热题 100》 经过了两个多月&#xff0c;终于刷完了代码随想录的题目&#xff0c;现在准备开始挑战热题一百了&#xff0c;接下来我会将自己的题解以博客的形式同步发到力扣和 c 站&#xff0c;希望在接下来的征程中与大家共勉&#xff01; 题组一&#xff1a;哈希 题…