I hope the following script is reproducible enough to highlight my issue,
which is to automatically (in this case by loop, but it does not
necessarily have to be by a loop) add geom_line layers for each column of
mydata to the ggplot variable p1. for some reason doing this only works by
manually adding each layer:

library(ggplot2)
library(gtable)


#creates set of reproducible data
xaxis<-rnorm(30)+10
xaxis
mydata<-replicate(9, rnorm(30)+20)

#creates a matrix of colors to identify each line on the final plot of
#each column of mydata

colour_scheme<-palette(rainbow(dim(mydata)[2]))

# Main scatterplot
p1 <- ggplot(NULL)

#ideal code that would create a geom_line layer for each column of mydata
vs. xaxis
for (i in 1:dim(mydata)[2])
    {
      p1=p1+geom_line(aes(xaxis,mydata[,i]),colour=colour_scheme[i])
    }
p1

#run the following code to see what it SHOULD look like:
p1 <- ggplot(NULL)
p1=p1+geom_line(aes(xaxis,mydata[,1]),colour=colour_scheme[1])
p1=p1+geom_line(aes(xaxis,mydata[,2]),colour=colour_scheme[2])
p1=p1+geom_line(aes(xaxis,mydata[,3]),colour=colour_scheme[3])
p1=p1+geom_line(aes(xaxis,mydata[,4]),colour=colour_scheme[4])
p1

	[[alternative HTML version deleted]]

