generic.scatter.plot <- function(x,y,ann=NULL,pch=1,
fit.line=F,axis.round=2,...) {
par(mfrow=c(1,1))
plot(x,y,type='n',bty='n',xaxt='n',yaxt='n',...)
axis(1,round(quantile(x),axis.round),lty=0,las=3)
axis(2,round(quantile(y),axis.round),lty=0,las=1)
axis(1,x,rep("+",length(x)),lty=0,line=-1)
axis(2,y,rep("+",length(y)),lty=0,line=-1)
if(fit.line) {
fit <- lm(y ~ x)
abline(fit)
}
if(!is.null(ann)) {
text(x,y,ann)
} else {
points(x,y,pch=pch)
}
mtext(paste('n =',length(x)))
}