如何在R中绘制线性和逆回归拟合线?

时间:2019-07-28 21:09:44

标签: r plot regression line inverse

我正在尝试在散点图上绘制线性和逆拟合线。 我尝试了很多事情,但没有成功。

我曾尝试使用具有平滑功能说明的ggplot,但反线仍然看起来完全像y = 0。 我已经尝试过添加ablines,没有运气。 我没有成功使用lm(y = 1 / x)。

1 个答案:

答案 0 :(得分:0)

从反拟合线中我了解的是;

y = a + b x

data <- data.frame("y"=mtcars$disp,"x"=mtcars$wt)

fit <-  lm(data$y ~  data$x)
fit_inverse <-  lm(data$y ~  I(1/data$x))

但是,由于x轴不同(x和1 / x),因此要将它们放置在同一图形上,必须使用不同的x轴。否则,您需要分别绘制它们。

plot(data$x,data$y,col = "blue",bty="l",pch=20,ylab = "",xlab="")
lines(data$x,fitted(fit) ,type="l",lty = 29,col="blue") 
par(new = TRUE)
plot(1/data$x,data$y, xaxt = "n", yaxt = "n",col = "red", lty = 
2,bty="l",pch=10,ylab = "",xlab="")
lines(1/data$x,fitted(fit_inverse) ,type="l",lty = "29",col="red") 
axis(side = 3)
legend("top", c("Fitted", "Inverse Fitted"),col = c("blue", "red"), lty 
= c(29, 2))

enter image description here