RNA-SEQ(四):火山图

题目:DEseq2差异分析得到的差异基因做火山图。

目的:火山图可反映总体基因的表达情况,通过不同的颜色醒目的展示差异基因的情况。

内容:1. 对DEseq2分析得到的差异基因进行筛选。

2.筛选的得到的基因定义上下调基因。

3. 用ggplot包绘图。

数据:DEseq2差异分析得到的差异基因列表。(如下:deseq2差异分析得到的数据)

image.png

工具:Rstudio。

步骤:

  1. 筛选差异基因,设置了不同条件进行统计,差异基因很多,所以最终确定的筛选条件为pvalue<0.05 & abs(log2oldchange) >1。

  2. 定义log2oldchange>1的为上调基因,log2oldchange<-1的为下调基因。

  3. 对筛选得到的基因做火山图。脚本如下:

library(ggplot2)
library(ggrepel)  #用于标记的包

library(pheatmap)
library(export)
# 读取火山图数据文件
setwd("E:/造血干/ccx/差异分析")
#打开全部未筛选差异基因

data <- read.csv("h9_d2DEG.csv", header=TRUE)
# 建议您的文件里对应的名称跟demo数据一致,这样不用更改后续代码中的变量名称
colnames(data)[1] <- c("Name")


data <- data[,c(1,3,7)]
data <- na.omit(data)

log2FC = 1.5 # 用来判断上下调,一般蛋白质组的项目卡1.5
pvalue = 0.01 #用来判断上下调

# 判断每个基因的上下调,往数据框data里新增了sig列
data$sig[(-1*log10(data$padj) < -1*log10(pvalue)|data$padj=="NA")| data$log2FoldChange < log2FC & data$log2FoldChange > -(log2FC)] <- "NotSig"
data$sig[-1*log10(data$padj) >= -1*log10(pvalue) & data$log2FoldChange >= log2FC] <- "Up"
data$sig[-1*log10(data$padj) >= -1*log10(pvalue) & data$log2FoldChange <= -(log2FC)] <- "Down"

View(data$sig)
#标记上下调基因数目
this_tile <- paste0('Cutoff for logFC is ',round(1.5,2),
                    '\nThe number of up gene is ',nrow(data[data$sig =="Up",]) ,
                    '\nThe number of down gene is ',nrow(data[data$sig =="Down",]))                 
this_tile
# 标记特殊基因名方式(一)
# 根据数据框中的Marker列,1的为标记,0的为不标记
#data$label=ifelse(data$Marker == 1, as.character(data$Name), '')
# (或)标记方式(二)
# 根据PValue小于多少和log[2]FC的绝对值大于多少筛选出合适的点
PvalueLimit = 5.615066e-159
#FCLimit =5   data$label=ifelse(data$padj < PvalueLimit & abs(data$log2FoldChange) >= FCLimit, as.character(data$Name), '')
data$label=ifelse(data$padj < PvalueLimit , as.character(data$Name), '')
data$label
# 绘图
ggplot(data,aes(log2FoldChange,-1*log10(padj))) +    # 加载数据,定义横纵坐标
  geom_point(aes(color = sig)) +                           # 绘制散点图,分组依据是数据框的sig列
  xlab("log2 fold change") + 
  ylab("-log10 p-value") +
  ggtitle( this_tile ) +                             # 定义标题,x轴,y轴名称
 # scale_color_manual(values = c("blue","green","red")) + # 自定义颜色,将values更改成你想要的三个颜色
 scale_color_manual(values=c("#546de5", "#d2dae2","#ff4757"))+
  geom_hline(yintercept=-log10(pvalue),linetype=2)+        # 在图上添加虚线
  geom_vline(xintercept=c(-(log2FC),log2FC),linetype=2)+ # 在图上添加虚线
  geom_text_repel(aes(x = log2FoldChange,                   # geom_text_repel 标记函数
                      y = -1*log10(padj),          
                      label=label),                       
                  max.overlaps = 10000,                    # 最大覆盖率,当点很多时,有些标记会被覆盖,调大该值则不被覆盖,反之。
                  size=3,                                  # 字体大小
                  box.padding=unit(0.5,'lines'),           # 标记的边距
                  point.padding=unit(0.1, 'lines'), 
                  segment.color='black',      
                  show.legend=FALSE)                      # 标记线条的颜色
graph2ppt(file="d2gene_Volcano-name.ppt", width=10, aspectr=1)##或者4*6pdf保存

结果图

image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,451评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,172评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,782评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,709评论 1 294
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,733评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,578评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,320评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,241评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,686评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,878评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,992评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,715评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,336评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,912评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,040评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,173评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,947评论 2 355

推荐阅读更多精彩内容