Dear wise ones, I have a problem assigning different colors to bars in a barplot. The data I'm using is the following dataframe (truncated) :
> L0 r n p t [...] 18 19 1 1 RFM 19 20 1 1 RFM 20 21 2 1 RFM 21 23 6 1 RIH 22 24 2 1 ROC 23 25 1 1 ROC 24 26 1 1 ROC 25 27 2 1 ROC 26 28 2 1 RFT 27 29 1 1 RFT 28 30 2 1 RFT 29 31 1 1 ROH [...] My barplot should display ascending bars according to L0$n. Their width depends on L0$p, which can be greater than 1. Last, I want a different color for each of the five values of L0$t. I use the following array to assign a colour for each type given in L0$t : > coul <- array() > coul['ROC'] <- 'khaki1' > coul['RFM'] <- 'palegreen' > coul['RFT'] <- 'lightorange' > coul['RIH'] <- 'blue' > coul['ROH'] <- 'lightblue' And here's the barplot command I'm using : > barplot(sort(L0$n), ylim=c(0,10), width=L0$p[order(L0$n)], col=coul[L0$t[order(L0$n)]], main="Nombre de genres", sub="Livrets") The barplot uses the sort() and order() functions to display ascending bars with the right values. The width parameter works fine, but the color doesn't. I get : Erreur dans rect(y1, x1, y2, x2, ...) : nom de couleur incorrect (error in rect(y1, x1, y2, x2, ...) : incorrect color name) I tried to fiddle with coul[] or its indice but it didn't help. Does anybody know what's wrong ? Many thanks, Octave ______________________________________________ R-help@stat.math.ethz.ch 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.