属于比较常用的技巧。下面我用ggplot2内置数据集进行演示:
先来看一下,仅有散点和拟合线的图
df=diamonds[sample(1:dim(diamonds)[1],40),]
df$price=df$price / 10000
p=df%>%ggplot(aes(carat,price))+
geom_point(size=4,alpha=0.3,color="#6baed6")+
geom_smooth(method = "lm", formula = y~x, color = "#756bb1", fill = "#cbc9e2")+ #颜色选自https://colorbrewer2.org/
theme_bw()+
theme(
panel.grid.major = element_blank(),panel.grid.minor = element_blank()
)
p
ggsave("tmp1.pdf",width = 8,height = 8,units = "cm")
如果想添加拟合的方程,可以使用ggpmisc包的stat_poly_eq()函数,该函数可以拟合多项式方程并生成多种标签,比如p值、决定系数R方,这些由函数计算出来的量通常名称前后有两个点
..eq.label..
..adj.rr.label..
..p.value.label..
对应的代码只有