R语言 向图中添加直线 – abline()函数
R语言中的 abline() 函数用于在图形中添加一条或多条直线。abline()函数可用于在绘图中添加垂直、水平或回归线。
语法:
abline(a=NULL, b=NULL, h=NULL, v=NULL, …)
参数:
a, b: 指定直线的截距和斜率
h: 指定水平线的y值
v: 指定垂直线的x值
返回: 绘图中的一条直线
例1: 在图中添加一条垂直线
# add line to square plot
# first example : Add one line
plot(cars)
abline(v = 16, col = "darkgreen")
# second example : add 2 lines
# addline to square plot
# change line colors, sizes and types
plot(cars)
abline(v = c(16, 22), col = c("darkgreen", "blue"),
lty = c(1, 2), lwd = c(1, 3))
# third example
set.seed(1200); mydata<-rnorm(180)
hist(mydata, col="darkgreen")
# lwd=line width, lty =linetype
abline(v = mean(mydata), col = "blue", lwd = 4, lty = 4)
输出
在上面的例子中,使用abline()将直线添加到不同的图形中。
例2: 添加一条水平线
# R program to add a horizontal line
# to a plot
# Creating a plot
plot(cars)
# Calling abline() function
abline(h = 60, col = "darkgreen")
输出
在上面的例子中,abline()函数在指定的’x’坐标处,在当前绘图上画一条水平线。
例3: 添加一条回归线
par(mgp = c(2, 1, 0), mar = c(3, 3, 1, 1))
# Fit regression line
require(stats)
reg<-lm(dist ~ speed, data = cars)
coeff = coefficients(reg)
# equation of the line :
eq = paste0("y = ", round(coeff[1], 1), "*x ",
round(coeff[2], 1))
# plot
plot(cars, main = eq)
abline(reg, col = "darkgreen")
输出
在上述例子中,使用直线方程和abline()函数添加直线,并绘制速度和距离之间的关系。