Dear helpers, In an attempt to use a loop to generate graphs in a for loop in run into a problem. The plan is to fill each page with eight graphs (mfrow c(4,2)) in to two columns. Only the buttom graphs ( meaning every fourth graph) have tick labels on the x axis to preserve space. I used an if .... Else statement to achieve that. The problem is that the first eight graphs are skipped when I run the loop, the other graphs are fine. However, all graphs can be generated individually. This indicates that the data sets are fine. Pulling the results from a nonlinear regression to more than 90 data sets from a list (resultslist[[i]]) Generating the first derivative and multiply it by 100 to adjust for the scale. Here is the code. pdf('F:/diffnormal_16001a.pdf') par(mfcol = c(4,2)) for(i in 1: 92){ fit <- NULL der <- NULL Zeit <- NULL Zeit <- seq(0,300) try(guess <- predict(resultslist_1600[[i]]) ) if(class(guess) == "try-error") {next} fit <- smooth.spline(Zeit, guess) der <- 100*(predict(fit, Zeit, deriv = 1))$y if((i/4)%%1 ==0){par(mar =c(4,4,0, 0) + 0.1)} else{par(mar =c(0,4,0, 0) + 0.1)} leg = paste("Data_", i,sep = "") plot(resultslist_1600[[i]], type = "all", pch = ".", ylab = "Signal", log = "", axes = F) lines(Zeit, der) if((i/4)%%1 ==0){axis(1, at = seq(0, 360, length = 6), label = c(), font = 2)} axis(2, at pretty(na.omit(eval(parse(text=paste("bleeder1600[,",i,"]",sep =""))))), label = c()) mtext(side = 3, leg, line = -2)} I understand, that I am supposed to submit working code. However, I deal with a fairly comprehensive data set and I have to generate a large list using another R package. Thus I explain what it does: Generate time points(Zeit <- seq(0,300) Pulling the results from a nonlinear regression to more than 90 data sets from a list (resultslist_1600[[i]]) Test if prediction can be done try(guess <- predict(resultslist_1600[[i]]) ) if(class(guess) == "try-error") {next} (it turned out it can be done for all data set, as I am able to generate the graphs for each data set from the command line individually. Generating the first derivative and multiply it by 100 to adjust for the scale. fit <- smooth.spline(Zeit, guess) der <- 100*(predict(fit, Zeit, deriv = 1))$y The problem appears to be hidden in the mfrow statement. I spent quite a bit of time on this problem, thus any help or new ideas would be very much appreciated. Thank you Andreas Betz Scientist andreasbeyz@earthlink.net [[alternative HTML version deleted]]