R绘图(04)——绘制相关点线图

绘制相关图,需要准备对应坐标轴、散点、回归线以及r和p值

 

 

 

 


######计算相关########
library(ggm)
library(psych)
#如果没有,需要install.packages("ggm");install.packages("psych")


#读取准备好的数据,此处我的保存在桌面c盘

#读取数据选用以下方式
#library(readxl)
#data1129 <- read_excel("C:/Users/Desktop/data1129.xlsx")

#此处为随机生成的sample数据

a<-runif(100,5,10)
b<-runif(100,10,20)
data1129<-cbind(a,b)
data1129<-as.data.frame(data1129)
colnames(data1129)<-c("actualvalues","predictedvalues")

View(data1129)


#计算相关(例如此处为斯皮尔曼相关,可选person)
res<-corr.test(data1129,method = "spearman")
#选择保存文件夹
setwd("D:\\1129data\\")
#输出r和p
write.table(res[["r"]],"corrR.csv",sep=",")
write.table(res[["p"]],"corrP.csv",sep=",")


#####绘图(计算完了p值r值再运行下面)######
library(ggplot2)
#基本绘图
p <- ggplot(data1129,aes(x=actualvalues,y=predictedvalues)) + labs(x="Actual values" ,y="Predicted values")
#添加点线,更改颜色,点为蓝色“0073C2FF"线为红色"#FC4E07"更多颜色看:https://www.cnblogs.com/biostat-yu/p/13839621.html
p<-p+ geom_point(size = 3,color = "#0073C2FF")+geom_smooth(aes(color = "#FC4E07", fill = "#FC4E07"),size=3,method=lm)
#更改坐标轴,size为大小
p<-p+theme_classic()+theme(axis.line = element_line(colour = "black",size = 1.2))+theme(axis.text=element_text(size=18),
axis.title=element_text(size=24,face="bold"))+ guides(fill="none",color="none")
#添加r和p的值
p<-p+annotate("text",x=8,y=22,size=5,label="italic(r)=='0.076,'~italic(p)=='0.029'",parse=TRUE)
#保存
ggsave(p, filename = "pic.pdf",
scale = 1, width = 12, height = 9,dpi = 300)
ggsave(p, filename = "pic.tiff",
scale = 1, width = 12, height = 9,dpi = 300)


posted @ 2022-10-17 09:45  MUJIU  阅读(233)  评论(0编辑  收藏  举报