Marc Schwartz wrote: > On Wed, 2005-10-05 at 22:19 +1000, sosman wrote: > >>I have some data in a CSV file: >> >>time,pos,t,tl >>15:23:44:350,M1_01,4511,1127 >>15:23:44:350,M1_02,4514,1128 >>15:23:44:350,M1_03,4503,1125 >>... >>15:23:44:491,M2_01,4500,1125 >>15:23:44:491,M2_02,4496,1124 >>15:23:44:491,M2_03,4516,1129 >>... >>15:23:44:710,M3_01,4504,1126 >>15:23:44:710,M3_02,4516,1129 >>15:23:44:710,M3_03,4498,1124 >>... >> >>Each pos (eg M1_01) is an independent time series. I would like to plot >>each time series as lines on a single plot and I wondered if there was >>something more straight forward than I was attempting. >> >>I got as far as: >> >>fname = 't100.csv' >>t = read.csv(fname) >>tpos = split(t, t$pos) >>plot(tpos[["M1_01"]]$t, type='l') >>for (p in names(tpos)) { >> lines(tpos[[p]]$t) >>} >> >>which seems to work but then I got stuck on how to make each line a >>different colour and figured that there might a be a one liner R command >>to do what I want. >> >>Any tips would be appreciated. > > > > See the examples in ?plot.ts for some approaches. > > You will need to review ?ts to create time series objects from your data > to be used in plot.ts(). > > Another approach, which is not specific to time series, is ?matplot.
The matplot example looks like the go. The example data didn't really show the grouping and even though I mentioned time series, simply plotting the t values as an ordered sequence is fine for this application (sorry about the red herring). The dataset below is what I should have shown: pos t 1 M1_01 4511 2 M1_02 4514 3 M1_03 4503 4 M1_01 4500 5 M1_02 4496 6 M1_03 4516 7 M1_01 4504 8 M1_02 4516 9 M1_03 4498 So what I ended up with was: # Make a wide data set tw = unstack(t, t ~ pos) # Results in a list since not all series the same length # Find the shortest dataset len = min(sapply(tw, length)) setlen = function(l, newlen) { length(l) = newlen } # Not sure why this did not work #sapply(tw, setlen, len) for (n in names(tw)) { length(tw[[n]]) = len } matplot(data.frame(tw), type='l') Apart from flying a bit blind, I obtained the plot I was after. thanks ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html