原始数据格式:
>getwd()
>setwd("/Users/liruiting")
#install.packages("ggplot2")
>library(ggplot2)
>data<-read.table("ConvsTreat.protein.xls",sep="\t",header=T)
> pdf("volcano.pdf")
#定义“点”,修改’点‘的大小与透明度 参数:size=,alpha=
> p <- ggplot()+geom_point(data,mapping=aes(x=log2(Con.vs.Treat.FC),y=-log10(Con.vs.Treat.Pvalue),color=Con.vs.Treat.UP.DOWN), size=2, alpha = 0.6)
#修改’点’的颜色(参数:scale_colour_manual)
> color=c("black","green","red")
> p<-p+scale_colour_manual(values=color)
#增加图标题和修改x与y轴的名称
> p<-p+labs(title="Con.vs.Treat",x=expression(Log[2]*'Fold Change Con.vs.Treat'),y=expression(-Log[10]*'P value'))
#修改图的背景
> p<-p+theme(panel.background = element_blank(),axis.line = element_line(colour = "black"))
#增加辅助线
> p<-p+geom_hline(aes(yintercept=-log10(0.05)),linetype=2)+ geom_vline(aes(xintercept=log2(1.5)),linetype=2)+
geom_vline(aes(xintercept=-log2(1.5)),linetype=2)
> p
> dev.off()
结果如图:
notes:
数据的读取: read.table() “(路径)文件名”,参数 sep=“\t“(分隔符,默认为空格) header=T(表格中第一行要不要为列名,设置为 TRUE时第一行作为列名);读取XXX.csv read.csv()函数sep分隔符默认为逗号, header参数默认为TRUE。
在使用R语言作图时,有时需要在图上标注诸如求和、积分、上下 标等数学符号,该操作可以通过expression函数完成。
linetype=2(短虚线) ,xintercept(函数图形与X轴交点到原点的距离) yintercept(函数图形与Y轴交点到原点距离)。