Anda di halaman 1dari 2

# Plot to illustrate regression line with confidence, prediction intervals

# 23 February 2013
# njg

default <- par(no.readonly=TRUE)


Ant.Data <- read.csv("antcountydata.csv",header=TRUE)
attach(Ant.Data)

##########################################
# fit the model

reg.model <- lm(mean.ann.temp~lat.centroid)

#################################################
# confidence and prediction intervals for original data

con.1 <- predict(reg.model,interval="confidence")


pred.1 <- predict(reg.model,interval="prediction")

####################################################
# confidence and prediction intervals for new x data
# (extrapolation and more finely spaced x)

nd <- seq(35,50,length=100)

con.2 <- predict(reg.model,interval="confidence",


newdata=data.frame(lat.centroid=nd))

pred.2 <- predict(reg.model,interval="prediction",


newdata=data.frame(lat.centroid=nd))

#####################################################
# plot results just for data interval

plot(lat.centroid,mean.ann.temp)
abline(reg.model)

matlines(Ant.Data$lat.centroid,con.1[,c("lwr","upr")],
col="red",lty=1,type="l")

matlines(Ant.Data$lat.centroid,pred.1[,c("lwr","upr")],
col="blue",lty=1,type="l")

##################################################
# plot results for extrapolated interval and smooth data
plot(lat.centroid,mean.ann.temp,xlim=c(30,50),ylim=c(-5,15))

abline(reg.model)

matlines(nd,con.2[,c("lwr","upr")],
col="red",lty=1,type="l")

matlines(nd,pred.2[,c("lwr","upr")],
col="blue",lty=1,type="l")

###########################################################
# plot the results as a confidence band using a polygon
plot(lat.centroid,mean.ann.temp,
xlim=c(34,50),ylim=c(-5,25),type="n")

polygon(c(nd,rev(nd)),c(con.2[,2],rev(con.2[,3])),
col="thistle",border=NA)

points(lat.centroid,mean.ann.temp)

abline(reg.model)

##########################################################
# plot the results as a prediction band using a polygon

plot(lat.centroid,mean.ann.temp,
xlim=c(34,50),ylim=c(-5,25),type="n")

polygon(c(nd,rev(nd)),c(pred.2[,2],rev(pred.2[,3])),
col="wheat",border=NA)

points(lat.centroid,mean.ann.temp)
abline(reg.model)

#########################################################
detach(Ant.Data)
par(default)
rm(list=ls())

Anda mungkin juga menyukai