From: ONKELINX, Thierry <Thierry.ONKELINX_at_inbo.be>

Date: Wed, 26 Mar 2008 12:26:50 +0100

ir. Thierry Onkelinx

Instituut voor natuur- en bosonderzoek / Research Institute for Nature and Forest

Cel biometrie, methodologie en kwaliteitszorg / Section biometrics, methodology and quality assurance

Gaverstraat 4

9500 Geraardsbergen

Belgium

tel. + 32 54/436 185

Thierry.Onkelinx_at_inbo.be

www.inbo.be

> Please provide a reproducible example (or at least describe the

*> error!), otherwise we have no way to help you.
*

> Hadley

*> --
*

> http://had.co.nz/

>

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.

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. Received on Wed 26 Mar 2008 - 11:28:03 GMT

Date: Wed, 26 Mar 2008 12:26:50 +0100

Tribo,

It looks like geom_line() accepts only 4 linetypes and you asked for 5.

library(ggplot2)

Tree_v <- rep(c(1:5),each = 5)

age_v <- rep(seq(1,25, by = 5),5) + 10*runif(25)
circumference_v <- rep(seq(21,45, by = 5), 5)*Tree_v + 25*runif(25)

#This will work

Orange2 <- data.frame(Tree = as.factor(Tree_v), age = age_v,
circumference = circumference_v, Lines = factor(as.numeric(Orange2$Tree)
%% 4))

ggplot(data = Orange2, aes(x = age, y = circumference, color = Tree,
linetype = Lines)) + geom_line()

#This won't

Orange2 <- data.frame(Tree = as.factor(Tree_v), age = age_v,
circumference = circumference_v, Lines = factor(as.numeric(Orange2$Tree)
%% 5))

ggplot(data = Orange2, aes(x = age, y = circumference, color = Tree,
linetype = Lines)) + geom_line()

**HTH,
**
Thierry

ir. Thierry Onkelinx

Instituut voor natuur- en bosonderzoek / Research Institute for Nature and Forest

Cel biometrie, methodologie en kwaliteitszorg / Section biometrics, methodology and quality assurance

Gaverstraat 4

9500 Geraardsbergen

Belgium

tel. + 32 54/436 185

Thierry.Onkelinx_at_inbo.be

www.inbo.be

To call in the statistician after the experiment is done may be no more
than asking him to perform a post-mortem examination: he may be able to
say what the experiment died of.

~ Sir Ronald Aylmer Fisher

The plural of anecdote is not data.

~ Roger Brinner

The combination of some data and an aching desire for an answer does not
ensure that a reasonable answer can be extracted from a given body of
data.

~ John Tukey

-----Oorspronkelijk bericht-----

Van: r-help-bounces_at_r-project.org [mailto:r-help-bounces_at_r-project.org]
Namens Tribo Laboy

Verzonden: woensdag 26 maart 2008 12:01

Aan: hadley wickham

CC: r-help_at_r-project.org

Onderwerp: Re: [R] Combining several mappings in ggplot2

Apologies! I though that the Orange dataset comes with R, but it is in fact in the package "datasets".

So here's another "Orange2" dataset for the example:

Tree_v = rep(c(1:5),each = 5)

age_v = rep(seq(1,25, by = 5),5) + 10*runif(25)
circumference_v <- rep(seq(21,45, by = 5), 5)*Tree_v + 25*runif(25)
Orange2 <- data.frame(Tree = as.factor(Tree_v), age = age_v,
circumference = circumference_v)

This works fine:

ggplot(data = Orange2, aes(x = age, y = circumference, color = Tree)) + geom_line()

These generate errors (included):

> ggplot(data = Orange2, aes(x = age, y = circumference, color = Tree,

linetype = Tree)) + geom_line()

Error in get("check_domain", env = ., inherits = TRUE)(., ...) :
Too many values in domain (5 > 4)

> ggplot(data = Orange2, aes(x = age, y = circumference, color = Tree))

+ geom_line() + scale_linetype_manual(value = c(1:5))
Error in unit(values, units, data = data) :
'x' and 'units' must have length > 0

What am I doing wrong?

Regards,

TL

On Wed, Mar 26, 2008 at 2:08 AM, hadley wickham <h.wickham_at_gmail.com>
wrote:

> On Tue, Mar 25, 2008 at 11:48 AM, Tribo Laboy <tribolaboy_at_gmail.com>

wrote:

> > Hello,

*> >
**> > I want to be able to make a plot that has several series with
**> > different color and linetype.
**> > Online documentation suggest that this is possible, but I haven't
*

found how:

*> >
*

> > "We can also create redundant mappings, mapping the same variable

to

> > multiple aesthetics. This is most useful when producing a graphic

for

> > both colour and black and white display."

*> >
**> > Here's what I have to get the color
**> > ggplot(data = Orange, aes(x = age, y = circumference, color =
*

Tree)) +

> > geom_line()

*> >
**> > if i try this I get an error:
**> > ggplot(data = Orange, aes(x = age, y = circumference, color =
*

Tree,

> > linetype = Tree)) + geom_line()

>

> Please provide a reproducible example (or at least describe the

>

> Hadley

> >

> http://had.co.nz/

>

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.

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. Received on Wed 26 Mar 2008 - 11:28:03 GMT

Archive maintained by Robert King, hosted by
the discipline of
statistics at the
University of Newcastle,
Australia.

Archive generated by hypermail 2.2.0, at Wed 26 Mar 2008 - 21:30:24 GMT.

*
Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help.
Please read the posting
guide before posting to the list.
*