[R] overlap different line in a xyplot (lattice)
Felix Andrews
felix at nfrac.org
Sun Dec 12 01:47:55 CET 2010
On 12 December 2010 00:08, Peter Ehlers <ehlers at ucalgary.ca> wrote:
> On 2010-12-11 03:12, Francesco Nutini wrote:
>>
>> mmmh, yes this method works...
>> but I have to overlap this two graphs:
>>
>>> xyplot(a ~b |sites, data=dataset, col="red")
>>
>>> xyplot(c ~b |sites, data=dataset, col="blue")
>>
>>
>> a, b and c are columns in the same dataset. "Sites" is also a column in
>> the dataset, but it's a factorial variables.
>> How can I use your method?
>
> The idea is the same: you need to get your data
> into "long" format with a grouping variable and
> then use the 'groups' argument to xyplot.
> Here's fake data frame (you should have provided one):
>
> DF <- data.frame(y1 = rnorm(30),
> y2 = rnorm(30) + 2,
> x = rep(1:10, 3),
> sites = gl(3, 10, lab=LETTERS[1:3]))
>
> ## Use the reshape2 package to melt the data:
> ## (or use reshape() in base R)
> require(reshape2)
> DF1 <- melt(DF, measure.vars = c('y1', 'y2'),
> variable.name = 'grp', value.name = 'y')
>
> ## and plot:
> require(lattice)
> p <- xyplot( y ~ x | sites, data = DF1, groups = grp,
> col = c("red", "blue"), type = "b")
> print(p)
>
> Peter Ehlers
By the way, in this particular case there is a shortcut which does the
reshaping internally:
xyplot(y1 + y2 ~ x | sites, DF, type = "b")
>
>> sorry for my ignorance!
>>
>> Francesco Nutini
>>
>> > Date: Fri, 10 Dec 2010 10:13:00 -0800
>> > From: ehlers at ucalgary.ca
>> > To: nutini.francesco at gmail.com
>> > CC: r-help at r-project.org
>> > Subject: Re: [R] [r] overlap different line in a xyplot (lattice)
>> >
>> > On 2010-12-10 07:04, Francesco Nutini wrote:
>> > >
>> > > dear [R] users,
>> > > is there a way to plot different data (but with the same
>> x-variables) in the same xyplot window?
>> > > There are already a similar question, but the answer is not enought
>> explanatory...
>> >
>> > Something like this?
>> >
>> > x <- rep(1:10, 2)
>> > y1 <- rnorm(10); y2 <- rnorm(10) + 2
>> > y <- c(y1, y2)
>> > g <- gl(2, 10)
>> > xyplot( y ~ x, groups = g, type = 'b')
>> >
>> > Peter Ehlers
>> >
>> > >
>> > >
>> > > Thanks a lot,
>> > > Francesco
>> > >
>> >
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
--
Felix Andrews / 安福立
http://www.neurofractal.org/felix/
More information about the R-help
mailing list