如何使用 ggplot2 在 R 中创建散点图中的回归模型线?


要向使用 ggplot2 创建的散点图中添加回归模型线,我们需要使用 geom_smooth 函数来定义线性模型的线。例如,如果我们有一个包含自变量 x 和因变量 y 的数据框 df,那么可以使用以下代码创建回归线 −

ggplot(df,aes(x,y))+geom_point()+geom_smooth(method="lm")

示例

考虑以下数据框 −

 在线演示

set.seed(133)
x<-rnorm(20,5,0.375)
y<-rnorm(20,10,2)
df<-data.frame(x,y)
df

输出

      x       y
1 5.033896 9.383918
2 5.130221 11.829104
3 4.702206 9.917457
4 5.110479 7.629133
5 5.464191 8.825002
6 4.982272 10.948461
7 5.382662 11.926883
8 4.961799 8.531400
9 4.936903 11.334979
10 4.489832 7.950781
11 5.518205 13.898027
12 5.458050 12.322746
13 4.567242 12.939460
14 5.312169 12.133224
15 4.764677 8.614166
16 5.444759 6.995418
17 4.946610 7.791502
18 5.204590 13.769303
19 4.613702 11.185987
20 4.894561 8.297381

加载 ggplot2 软件包并在散点图中创建回归模型线 −

示例

library(ggplot2)
ggplot(df,aes(x,y))+geom_point()+geom_smooth(method="lm")
`geom_smooth()` using formula 'y ~ x'

输出

我们来看另一个例子 −

示例

 在线演示

Time<-1:20
Growth<-sample(-10:-1,20,replace=TRUE)
df_growthstudy<-data.frame(Time,Growth)
df_growthstudy

输出

 Time Growth
1  1    -9
2  2    -8
3  3    -5
4  4    -5
5  5    -8
6  6    -6
7  7    -1
8  8    -3
9  9    -8
10 10   -1
11 11   -10
12 12   -2
13 13   -1
14 14   -7
15 15   -9
16 16   -6
17 17   -2
18 18   -7
19 19   -3
20 20   -6

示例

ggplot(df_growthstudy,aes(Time,Growth))+geom_point()+geom_smooth(method="lm")
`geom_smooth()` using formula 'y ~ x'

输出

更新日期:2020 年 10 月 17 日

260 人浏览

启动你的 职业

完成课程以获得认证

立即开始
广告