#设置工作路径
setwd("") #如果安装过了ggplot2包,请忽略此步 install.packages(“ggplot2”) library("ggplot2")
#导入文件
k<-read.csv("mRNA.csv",header=T)
#分别取up,down 和None 子集
k_up<-subset(k,PValue<0.05 & logFC>1) k_down<-subset(k,PValue<0.05 & logFC< -1) k_none<-subset(k,PValue>0.05 | (logFC < 1 &logFC > -1))
#计算up和down 的基因个数,并设置图例显示的名称
up<-dim(k_up)[1] down<-dim(k_down)[1] none_diff<- dim(k_none)[1] total<-up+down uplable=paste("Up :",up) downlable=paste("Down :",down) none_diff_lable=paste("No Change:",none_diff)
#在文件最后加一列,分别表示up,down 和False 的个数
k_up$sig<-uplable k_down$sig<-downlable k_none$sig<-none_diff_lable k<-rbind(k_up,k_down,k_none) logPValue= -log10(k$PValue)
开始绘图
p <- ggplot(k)+geom_point(aes(x=logFC,y=logPValue,color=sig),size=0.8) p <- p + ggtitle(paste(""))+xlab("log2(FC)")+ylab("-log10(PValue)")+expand_limits(x=c(-10,10)) p<-p+scale_color_manual(paste("DEGs","(",total,")"),values=c("green","grey","red")) p<-p+geom_hline(yintercept=-log10(0.05),linetype="dotdash",size=0.4)+geom_vline(xintercept=c(-1,1),linetype="dotdash",size=0.4) p

#ggtitle为该图的标题(可自行设置)
#xlab为x轴的标题
#ylab为y轴的标题
#expand_limits为x轴的范围
scale_color_manual设置了图例的标题和相应分组的颜色
geom_hline和geom_vline设置两条垂直线,设置类型为dotdash(虚线),size线条的粗细。
p+theme(panel.border=element_rect(fill=NA,colour="black"),plot.title = element_text(hjust = 0.5), panel.background = element_rect(fill = "transparent",colour ="gray"), plot.background = element_rect(fill = "transparent",colour ="gray"))

panel.border 图片周围的边框
plot.title 标题文本的外观
panel.background 绘图区域背景
plot.background 图形的背景
详细可见ggplot2包theme的帮助文档,在窗口输入?theme即可。
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/176911.html原文链接:https://javaforall.net
