可以使用ggplot2中的'geom_text()'函数在拟合直线上添加方程。具体步骤如下:

  1. 在ggplot绘图时,使用'geom_smooth()'函数拟合直线,设置'method'参数为'lm'(线性模型)。

例如:

ggplot(data, aes(x, y)) + 
  geom_point() + 
  geom_smooth(method = 'lm')
  1. 使用'stat_poly_eq()'函数将方程添加到拟合直线上。需要设置'formula'参数为拟合模型的方程式,'eq.with.lhs'参数为TRUE,以显示方程的左侧变量名称(默认为'y'),以及'aes'参数,以在适当的位置添加方程。

例如:

ggplot(data, aes(x, y)) + 
  geom_point() + 
  geom_smooth(method = 'lm') + 
  stat_poly_eq(formula = y ~ x, eq.with.lhs = TRUE, 
               aes(label = paste(..eq.label.., ..rr.label.., sep = '~~~')), 
               parse = TRUE)

其中,'formula'参数中的'y'和'x'分别代表因变量和自变量;'eq.with.lhs'参数设置为TRUE,表示显示方程的左侧变量名称;'aes'参数中的'label'参数用于设置方程式和相关系数的标签,使用'paste()'函数将它们连接起来;'parse'参数设置为TRUE,表示允许使用LaTeX语法,以美化方程式的显示效果。

  1. 可以进一步使用'theme()'函数调整方程的位置、字体、颜色等属性。

例如:

ggplot(data, aes(x, y)) + 
  geom_point() + 
  geom_smooth(method = 'lm') + 
  stat_poly_eq(formula = y ~ x, eq.with.lhs = TRUE, 
               aes(label = paste(..eq.label.., ..rr.label.., sep = '~~~')), 
               parse = TRUE) + 
  theme(
    axis.title.x = element_text(size = 12),
    axis.title.y = element_text(size = 12),
    axis.text = element_text(size = 10),
    legend.position = 'bottom',
    legend.title = element_blank(),
    legend.text = element_text(size = 10),
    plot.title = element_text(size = 14, face = 'bold'),
    strip.text = element_text(size = 12),
    panel.grid.major = element_blank(),
    panel.grid.minor = element_blank(),
    panel.background = element_blank(),
    panel.border = element_blank()
  )

这里使用了'theme()'函数设置了一些常见的图形属性,例如坐标轴标签、刻度文字、图例位置和字体、标题字体、面板网格和边框等。

R语言ggplot绘图添加拟合直线方程:详细步骤及代码示例

原文地址: https://www.cveoy.top/t/topic/mHwz 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录