[R] multiple line plots

Gabor Grothendieck ggrothendieck at gmail.com
Wed Oct 5 15:54:04 CEST 2005


Assuming, as in your example, that you want to plot your
series against 1, 2, 3, ...  first form a ts series, my.series,
and then plot it using the col= argument:

	my.series <- do.call("cbind", lapply(tpos, ts))
	m <- ncol(my.series)
	ts.plot(my.series, col = 1:m)

Another possibility is to use col = rainbow(m) in the last line.


On 10/5/05, sosman <sourceforge at metrak.com> 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.
>
> ______________________________________________
> R-help at 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
>




More information about the R-help mailing list