Dear Roey,
You can use geom_path() . See the example below. I think you need to sort the data if you want the order according to another column in the data frame.
#--toy example
d1 <- data.frame(z1=1:10, z2=c(1,10,2,9,3,8,4,6,5,7)
, x=c(0,2,8,20,16,8,4,2,1,0.5), y=1:10)
#--plot is based on the order of x
ggplot(d1, aes(x,y)) + geom_line()
#--plot is based on the order of the data (for this case)
ggplot(d1, aes(x,y)) + geom_path()
#--change the order of the data by z2
d2 <- d1[order(d1$z2),]
ggplot(d2, aes(x,y)) + geom_path()
--