如题 abline画出的线都是占整个版面 如下图
ppt.cc/Nivoy
我要如何只画特定的区间? 如下图
ppt.cc/9HpS6
目前的程式码如下
#产生资料
x=runif(50)
y=runif(50)
#得知区间
library(ifultools)
x <- seq(0,2*pi,length=50)
y <- as.numeric(y)
z <- linearSegmentation(x,y,n.fit = 10,angle.tolerance=15)
plot(x,y,type="o", col="blue")
abline(v=x[z], lty=2)
#>z [1]14 36 表示1-13个资料点做一次回归 14~35 36~50以此类推
#产生三个区间之资料
data=t(rbind(x,y))
data1=as.data.frame(data[c(1:13),])
data2=as.data.frame(data[c(14:35),])
data3=as.data.frame(data[c(36:50),])
#分别对三个区间做回归
model1=lm(y~x,data1) #intercept=0.5041,slope=-0.00728
model2=lm(y~x,data2) #intercept=0.41374 ,slope=0.03807
model3=lm(y~x,data3) #intercept=1.6148 ,slope=-0.2295
#画abline
abline(a=0.5041,b=-0.00728,col="red",lwd=2)
abline(a=0.41374,b=0.003807,col="green",lwd=2)
abline(a=1.6148,b=-0.2295,col="blue",lwd=2)
有请各位先进教导小弟一下~感谢!