火山圖

library(ggrepel) 
VolcanoPlot <- function(diff.genes,p.cutoff,logFC.cutoff,path.out,tag){
#只取表達(dá)變化前10的基因進(jìn)行標(biāo)注,所以其余的都設(shè)置為NA
diff.genes <- diff.genes[order(diff.genes$pvalue),]
diff.genes$anno_name <- diff.genes$symbol
diff.genes$anno_name[11:nrow(diff.genes)] <- NA
diff.genes$Change <- ifelse(diff.genes$log2FoldChange > logFC.cutoff & diff.genes$pvalue < p.cutoff, "Up", ifelse(diff.genes$log2FoldChange < -logFC.cutoff & diff.genes$pvalue < p.cutoff, "Down","No"))
title <- paste(tag,
    '\ncutoff for log2FoldChange is',logFC.cutoff,
    '\ncutoff for pvalue is '   ,p.cutoff,
    '\nthe number of up gene is ',nrow(diff.genes[diff.genes$Change=='Up',]),
    '\nthe number of down gene is ',nrow(diff.genes[diff.genes$Change=='Down',]))
print(title)
plot <- ggplot(data = diff.genes, aes(x = log2FoldChange, y = -log10(pvalue),colour = Change))+
geom_point(alpha = 0.5)+
scale_colour_manual(values = c('blue','grey10','red'))+
geom_text_repel(aes(label=anno_name),show.legend = F,segment.colour = 'black')+
xlab('log2FoldChange')+ylab('-log10(pvalue)')+
ggtitle(title)+
geom_hline(yintercept = -log10(p.cutoff),lty=4,lwd=0.6,alpha=0.8)+
geom_vline(xintercept = c(logFC.cutoff,-logFC.cutoff),lty=4,lwd=0.6,alpha=0.8)+
theme_bw()+
theme(panel.border = element_blank(),panel.grid.major = element_blank(),panel.grid.minor = element_blank(),axis.line = element_line(colour = "black"))
ggsave(paste("volcano_",tag,".png",sep=""),plot,path=path.out)
}

導(dǎo)入數(shù)據(jù)

for (tissue in names(DESeq2_all_sample)){
VolcanoPlot(diff.genes=DESeq2_all_sample[[tissue]],p.cutoff=0.05,logFC.cutoff=0,path.out=path_out,tag=tissue)
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容