差异表达分析是我们生信科研分析的常规分析,而火山图是展示差异表达分析结果最直观的方式,下面小编给大家展示一下用R画火山图的方法
####ggplot画火山图####首先读入差异表达分析的结果
###########差异分析结果diff_AML<-read.table("edgerAML.xls",sep="\t",quote="",header= T)head(diff_AML)
然后,自定义显著差异表达和非显著差异表达的基因,在这里FDR<0.05的基因为显著差异表达的基因,logFC>2为上调的基因,logFC<2的为下调的基因
###########差异分析结果筛选diff_AML$threshold = as.factor(ifelse(diff_AML$FDR < 0.05 &abs(diff_AML$logFC) >= 2, ifelse(diff_AML$logFC> 2 ,'Up','Down'),'NoSignifi'))head(diff_AML)
采用ggplot2绘图
###########绘图library(ggplot2)ggplot(data=diff_AML, aes(x = logFC, y = -log10(FDR), colour=threshold)) + #x轴为logFC y轴为-log10(FDR)上调、下调、非显著的基因颜色区分 geom_point(alpha=0.4, size=3.5) + #定义点的大小 scale_color_manual(values=c("blue","grey","red"))
可以加上ggplot包的美学处理
###########调整ggplot(data =diff_AML, aes(x = logFC, y = -log10(FDR),colour=threshold)) + #x轴为logFC y轴为-log10(FDR) 上调、下调、非显著的基因颜色区分 geom_point(alpha=0.4,size=3.5) + #定义点的大小 scale_color_manual(values=c("blue","grey","red"))+ #定义点的颜色
在这里可以根据需要自定义logFC也就是横坐标的范围,让图更好看
###########调整ggplot(data =diff_AML, aes(x = logFC, y =-log10(FDR), colour=threshold)) + #x轴为logFC y轴为-log10(FDR)上调、下调、非显著的基因颜色区分 geom_point(alpha=0.4, size=3.5) + #定义点的大小 scale_color_manual(values=c("blue","grey","red"))+ #定义点的颜色 xlim(c(-15, 15)) + #定义logFC显示的范围 theme_bw( )+theme(panel.background=element_rect(fill='transparent',color='black'))#定义边框、主题形式
欢迎关注
TCGA | 小工具 | 数据库 |组装| 注释 | 基因家族 | Pvalue
基因预测 |bestorf | sci | NAR | 在线工具 | 生存分析 | 热图
生信不死 | 初学者 | circRNA | 一箭画心| 十二生肖 | circos
舞台|基因组 | 黄金测序 | 套路 | 杂谈组装 | 进化 | 测序简史