[R] qplot, stacked area, own colourscheme
Albin Blaschka
albin.blaschka at gmail.com
Wed Sep 24 15:39:32 CEST 2008
Dear list,
I would like to apply my own colours to a stacked area plot, done with
qplot, but I have not succeeded...
What do I have so far (I am dealing with the development of cover of
specific groups of plants):
library(ggplot2)
library(RODBC)
channel <- odbcConnect("myusername", case="tolower")
sql <- "select trial, cover_of, dateofsurvey, cover from mytable"
mydata <- (sqlQuery(channel, sql))
What I get is the following dataframe (simplified, there are more
categories, not real data):
trial cover_of dateofsurvey cover
1 ZU-316 Cover dead material 2004-09-16 0
2 ZU-316 Cover grasses 2004-09-16 16
3 ZU-316 Cover herbs 2004-09-16 14
4 ZU-316 Cover legumes 2004-09-16 10
5 ZU-316 Cover open soil 2004-09-16 30
6 ZU-316 Cover dead material 2005-09-18 5
7 ZU-316 Cover grasses 2005-09-18 26
8 ZU-316 Cover herbs 2005-09-18 14
9 ZU-316 Cover legumes 2005-09-18 15
10 ZU-316 Cover open soil 2005-09-18 20
11 ZU-316 Cover dead material 2006-09-06 7
12 ZU-316 Cover grasses 2006-09-06 36
13 ZU-316 Cover herbs 2006-09-06 20
14 ZU-316 Cover legumes 2006-09-06 15
15 ZU-316 Cover open soil 2006-09-06 20
.
.
.
With the following command I get a nice graph (development of cover over
the years):
qplot(dateofsurvey, cover, data=mydata, geom="area", fill=cover_of,
main = "Development of cover, ZU-316",
ylab="projective Cover[%]", xlab = "Year")
As I have those categories (cover grasses, cover herbs...) I would like
to assign special colours to each (for example "cover grasses" => dark
green, "cover open soil" => brown ...), but I did not get it so far.
I tried several variations with area_geom, scale_manual but without
success...
For example (which does not work, it just shows the standard colourscheme):
mycolorscheme <- c("khaki", "darkgreen",
"lightgreen", "yellow", "saddlebrown")
mycolors <- rep(mycolorscheme,3)
myplot <- qplot(dateofsurvey, wert, data=mydata, geom="area",
fill=cover_of, main = "Development of cover, ZU-316",
ylab="projective Cover[%]", xlab = "Year")
myplot + geom_area(colour = mycolours)
What am I doing wrong?
Thank you in advance,
Albin
--
| Albin Blaschka, Mag.rer.nat.
| Etrichstrasse 26, A-5020 Salzburg
| * www.albinblaschka.info * www.thinkanimal.info *
| - It's hard to live in the mountains, hard but not hopeless!
More information about the R-help
mailing list