x<-seq(0,1,length=300) for(nk in 3:7){ knots<-seq(.05,.95,length=nk) cat('Knot locations: ') print(knots) xx<-rcspline.eval(x,knots=knots,inclx=T) for(i in 1:(nk-1))xx[,i]<-(xx[,i]-min(xx[,i]))/(max(xx[,i])-min(xx[,i])) for(i in 1:15){ beta<-2*runif(nk-1)-1 xbeta<-xx%*%beta+2*runif(1)-1 xbeta<-(xbeta-min(xbeta))/(max(xbeta)-min(xbeta)) if(i==1){ plot(x,xbeta,type="l",lty=1,xlab="X",ylab="",bty="l") title(paste(nk,"knots")) if(.R.) abline(v=knots, col=gray(.75)) else for(j in 1:nk) arrows(knots[j],.025,knots[j],-.03,rel=T,size=.5) } else lines(x,xbeta,lty=i) } cat('Left click for new graph\n') locator(1) }