Günal
Günal

Reputation: 751

Border in a R plot

For the example given below, how could I paint the area between the dashed lines?

Here is the code:

X <- rnorm(100)
Y<- X + rnorm(100)
reg<-lm(Y~X)

 CI <- predict(reg,interval="confidence")
 F <- CI[,1]
  L <- CI[,2]
 U <- CI[,3]

 plot(X,F)
 abline(reg, col="red")
 reg2<-lm(L~X)
 abline(reg2, col="red", lty="dashed")
 reg3<-lm(U~X)
 abline(reg3, col="red", lty="dashed")

here is the output

enter image description here

Upvotes: 4

Views: 1052

Answers (1)

IRTFM
IRTFM

Reputation: 263481

Seems like it should be a duplicate but I couldn't find it in an SO search. I know it's appeared many times on rhelp. But there's a fortune for that:

require(fortunes)
 fortune("every question")

Lastly, by what we could call the 'Liaw-Baron principle', every question that can be 
asked has in fact  already been asked.
   -- Dirk Eddelbuettel (citing Andy Liaw's and Jonathan Baron's opinion on unique 
            questions on R-help)
      R-help (January 2006)

polygon(x= c(X[order(X)],    rev(X[order(X)]) ), # both x and y  go "out" in order; 
          y=c(L[order(X)], rev(U[order(X)])),  # and then come "back in reverse order
             col=rgb(1,0,0,0.3) )    # transparent pink.

> plot(X,Y, pch="+")
> abline(reg, col="red")
> polygon(x= c(X\[order(X)\], rev(X\[order(X)\]) ), y=c(L\[order(X)\],rev(U\[order(X)\])), col=rgb(1,0,0,0.3) )

enter image description here

Upvotes: 3

Related Questions