如何在R中使用ggplot2创建的图表中显示回归斜率?
要使用模型在 ggplot2 创建的图表中显示回归斜率,我们可以按照以下步骤操作:
- 首先,创建数据框。
- 使用 ggplot2 的 annotate 函数创建散点图,并在图上显示回归斜率。
- 检查回归斜率。
创建数据框
让我们创建一个如下所示的数据框:
x<-rnorm(25) y<-rnorm(25) df<-data.frame(x,y) df
执行上述脚本后,将生成以下输出(由于随机化,此输出在您的系统上会有所不同):
x y 1 -0.3344355 -1.107060779 2 0.9164450 -2.499279489 3 -1.2110213 -1.232242802 4 -0.2469611 -0.002048849 5 0.8153152 0.096430178 6 1.5256898 0.366641036 7 0.2477990 -0.887210596 8 -0.5315179 1.594046357 9 -0.3118217 -0.059540798 10 -2.3218482 -0.578005944 11 -0.2519221 -1.470768208 12 0.8210061 -0.252782378 13 0.3679411 0.907479636 14 -1.1653608 -1.645537248 15 -2.7027016 -0.543878325 16 -0.2973516 0.217316266 17 0.1234872 0.749658413 18 1.1059414 0.204091591 19 0.6868014 0.976441196 20 -1.2037182 0.560449928 21 0.1567828 -0.799122836 22 0.5292457 -2.364608009 23 -0.9377216 0.347594404 24 0.5401030 -1.615585141 25 -0.5440631 0.637820747
创建带回归斜率的散点图
创建散点图,其中包含回归线以及在图上显示的模型斜率:
x<-rnorm(25) y<-rnorm(25) df<-data.frame(x,y) library(ggplot2) ggplot(df,aes(x,y))+geom_point()+stat_smooth(method="lm",se=F)+annotate("text",x=- 2,y=1,label=(paste0("slope==",coef(lm(df$y~df$x))[2])),parse=TRUE) `geom_smooth()` using formula 'y ~ x'
输出
检查模型的斜率
使用 coeff 函数查找模型的斜率,并检查它是否与图上显示的斜率匹配:
x<-rnorm(25) y<-rnorm(25) df<-data.frame(x,y) coef(lm(df$y~df$x))[2]
输出
df$x 0.01180069
广告