[R] XYPLOT - GROUPING WITH TWO CATEGORICAL VARIABLES
David Winsemius
dwinsemius at comcast.net
Mon Mar 7 15:18:15 CET 2011
On Mar 7, 2011, at 8:37 AM, Marcos Prunello wrote:
> Hi! I have a dataframe like this:
> dat
> =
> data
> .frame
> (Age=c(rep(30,8),rep(40,8),rep(50,8)),Period=rep(seq(2005,2008,1),
> 3
> ),Rate
> =c(seq(1,8,1),seq(9,16,1),seq(17,24,1)),Sex=rep(c(rep(0,4),rep(1,4)),
> 3))attach(dat)dat
> Age Period Rate Sex1 30 2005 1 02 30 2006 2
> 03 30 2007 3 04 30 2008 4 05 30 2005 5
> 16 30 2006 6 17 30 2007 7 18 30 2008 8
> 19 40 2005 9 010 40 2006 10 011 40 2007 11
> 012 40 2008 12 013 40 2005 13 114 40 2006 14
> 115 40 2007 15 116 40 2008 16 117 50 2005 17
> 018 50 2006 18 019 50 2007 19 020 50 2008 20
> 021 50 2005 21 122 50 2006 22 123 50 2007 23
> 124 50 2008 24 1
> And I can do these separated graphs by sex:
> xyplot(Rate ~ Period, data=subset(dat,Sex==0), groups = Age,
> type = "b", auto.key =
> list(cex=0.8,border=TRUE,size=3,cex.title=1,space = "right",
> title="Age", points = FALSE , lines = TRUE), xlab = "Period",
> ylab = "Rate",ylim=c(0,25), main = "Mortality Rates for 100000
> inhabitants - Men", scales=list(tck=c(1,0)) )xyplot(Rate ~
> Period, data=subset(dat,Sex==1), groups = Age, type =
> "b", auto.key =
> list(cex=0.8,border=TRUE,size=3,cex.title=1,space = "right",
> title="Age", points = FALSE , lines = TRUE), xlab = "Period",
> ylab = "Rate",ylim=c(0,25), main = "Mortality Rates for 100000
> inhabitants - Women", scales=list(tck=c(1,0)) )
> BUT I WANT THEM IN THE SAME GRAPH, IN THE SAME PANEL, TO BE
> COMPARED, FOR EXAMPLE WITH THE SAME COLOUR FOR THE SAME AGE
> GROUPS,AND A COMPLETE LINE FOR SEX=0 AND A DOTTED LINE FOR SEX=1
> I TRIED DIFFERENT THINGS BUT NOTHING WORKED FOR ME. I USED "PANEL"
> OPTIONS, OR XY.SUPERPOSE, BUT I DON`T KNOW HOW TO USE THOSE THINGS
> PROPERLY.
You may need to adjust your netiquette. All caps is considered
"shouting" (not to mention more difficult to read).
Try:
xyplot(Rate ~ Period, data=dat,
groups = interaction(Age, Sex),
type = "b",
auto.key = list(cex=0.8,border=TRUE,size=3,cex.title=1, space
= "right",
title="Age.Sex", points = FALSE , lines =
TRUE),
xlab = "Period", ylab = "Rate",ylim=c(0,25),
main = "Mortality Rates for 100000 inhabitants - Women & Men",
scales=list(tck=c(1,0)) )
> THANK YOU!!!
> MARCOS (ARGENTINA)
>
>
>
> [[alternative HTML version deleted]]
You should also learn to post in plain text. That way you linefeeds
won't disappear.
--
David Winsemius, MD
West Hartford, CT
More information about the R-help
mailing list