如何使用geom_abline在ggplot2中添加直线


您可以使用geom_abline()函数和其他类似的geom函数向 ggplot2 中的绘图添加直线。

以下是使用这些功能的最常见方法:

方法一:使用geom_abline()添加有斜率和交点的直线

 ggplot(df, aes(x, y)) +
  geom_point() +
  geom_abline(slope= 3 , intercept= 15 )

方法二:使用geom_vline()添加垂直线

 ggplot(df, aes(x=xvar, y=yvar)) +
    geom_point() +
    geom_vline(xintercept= 5 )

方法三:使用geom_hline()添加水平线

 ggplot(df, aes(x=xvar, y=yvar)) +
    geom_point() +
    geom_hline(yintercept= 25 )

方法4:使用geom_smooth()添加回归线

 ggplot(df, aes(x=xvar, y=yvar)) +
    geom_point() +
    geom_smooth(method=' lm ')

以下示例展示了如何在 R 中使用以下数据框来实际使用这些方法:

 #create data frame
df <- data. frame (x=c(1, 2, 3, 3, 5, 7, 9),
                 y=c(8, 14, 18, 25, 29, 33, 25))

#view data frame
df

  xy
1 1 8
2 2 14
3 3 18
4 3 25
5 5 29
6 7 33
7 9 25

示例 1:使用 geom_abline() 添加具有斜率和交点的线

以下代码演示如何使用geom_abline()将直线添加到斜率为 3、y 轴截距为 15 的散点图:

 library (ggplot2)

#create scatterplot and add straight line with specific slope and intercept
ggplot(df, aes(x=x, y=y)) +
  geom_point() +
  geom_abline(slope= 3 , intercept= 15 ) 

ggplot2 中的 geom_abline

示例2:使用geom_vline()添加垂直线

以下代码显示如何使用geom_vline()在 x=5 处向散点图添加垂直线:

 library (ggplot2)

#create scatterplot and add vertical line at x=5
ggplot(df, aes(x=x, y=y)) +
  geom_point() +
  geom_vline(xintercept= 5 ) 

R 示例中的 geom_vline 函数

示例3:使用geom_hline()添加水平线

以下代码显示如何使用geom_hline()在 y=25 处向散点图添加水平线:

 library (ggplot2)

#create scatterplot and add horizontal line at y=25
ggplot(df, aes(x=x, y=y)) +
  geom_point() +
  geom_hline(yintercept= 25 ) 

ggplot 中的 geom_hline 示例

示例 4:使用 geom_smooth() 添加回归线

以下代码显示如何使用geom_smooth()将拟合回归线添加到散点图:

 library (ggplot2)

#create scatterplot and add fitted regression line
ggplot(df, aes(x=x, y=y)) +
  geom_point() +
  geom_smooth(method=' lm ', se= FALSE ) 

geom_smooth 在 ggplot2 示例中添加回归线

注意se=FALSE参数告诉 ggplot2 不要显示标准误差估计的阴影线。

其他资源

以下教程解释了如何在ggplot2中执行其他常用操作:

ggplot2中如何调整线条粗细
如何在ggplot2中设置轴限制
如何删除ggplot2中的网格线
如何更改ggplot2中的背景颜色

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注