在每节,先运行以下这几行程序。
library(ggplot2)
library(ggpubr)
library(ggtext) #用于个性化图表
library(dplyr) #用于数据处理
p_base <- ggplot(data = mtcars, aes(x = wt, y = mpg)) + geom_point()
geom_smooth() 用于在 R 语言中的散点图上添加平滑曲线,以便更好地展示数据中的趋势和模式。特别是当你想要探索两个变量之间的关系时。
参数:
- method: 定义平滑曲线的计算方法,例如 lm(线性模型),glm(广义线性模型),loess(局部回归),等等。默认情况下,它会自动选择合适的方法(对于少于1000个观测点是 loess,多于1000个观测点是 gam)。
- se: 是否显示置信区间(默认为 TRUE),这可以帮助观察曲线的不确定性。
- span: 仅在使用 loess 方法时使用,控制局部回归的平滑程度。其范围从 0(非常曲折)到 1(不太曲折)
- formula: 允许你指定模型的公式,如 y ~ x,y ~ poly(x, 2)(多项式)等。
p_base + geom_smooth()
看一下下面的例子,为什么不是想要的结果:
ggplot(mtcars) +
geom_point(aes(x = wt, y = mpg)) + geom_smooth()
原因是geom_smooth() 找不到数据,也就是x和y.
更多示例
p_base + geom_smooth(span = 0.2)
p_base + geom_smooth(span = 0.8)
p_base + geom_smooth(method = "lm")