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 [EMAIL PROTECTED] 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: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Namens Tribo Laboy Verzonden: woensdag 26 maart 2008 12:01 Aan: hadley wickham CC: r-help@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 <[EMAIL PROTECTED]> wrote: > On Tue, Mar 25, 2008 at 11:48 AM, Tribo Laboy <[EMAIL PROTECTED]> 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 > error!), otherwise we have no way to help you. > > Hadley > > > -- > http://had.co.nz/ > ______________________________________________ R-help@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@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.