如何在 R 中创建连接两点的线

How to create Lines connecting two points in R

有什么方法可以在 R 中创建连接两点的线吗? 我知道 lines() 函数,但它会创建线段,我正在寻找的是一条无限长的线。

#define x and y values for the two points
x <- rnorm(2)
y <- rnorm(2)
slope <- diff(y)/diff(x)
intercept <- y[1]-slope*x[1]
plot(x, y)
abline(intercept, slope, col="red")
# repeat the above as many times as you like to satisfy yourself

这是玛莎建议的一个例子:

set.seed(1)
x <- runif(2)
y <- runif(2)

# function
segmentInf <- function(xs, ys){
  fit <- lm(ys~xs)
  abline(fit)
}

plot(x,y)
segmentInf(x,y)

使用 segment() 函数。

#example    
x1 <- stats::runif(5)
x2 <- stats::runif(5)+2
y <- stats::rnorm(10)


plot(c(x1,x2), y)


segments(x1, y[1:5], x2, y[6:10], col= 'blue')