[R] getting 21 very different colours

Duncan Murdoch murdoch@dunc@n @end|ng |rom gm@||@com
Tue Sep 11 12:43:57 CEST 2018


On 11/09/2018 3:34 AM, Federico Calboli wrote:
> Hi All,
> 
> I am plotting a scatterplot of 21 populations, and I am using rainbow(21)[pops.col] to generate 21 colours for the plot (which works).  Maybe it is because I can really process few colours at a time, but the differences between the colours are not as strong as I’d like.  I can specify start and end for rainbow(), but if anything that looks worse if I do not just stick to 0 and 1.
> 
> Is there a way of getting a set of 21 colours that maximises the differences between them?

The LAB and LUV color spaces (in the colorspace package) attempt to map 
perceptual differences to equal distances.  You could try using a grid 
of points in one of those spaces, but not all triples are valid.

However, 21 colours is probably too many for your purpose.  If you 
really want to distinguish 21 groups, you're likely going to have to use 
other characteristics as well, such as the symbol.  You could plot 21 
different letters in 5 different colours and it might work, but it's not 
going to be easy for viewers.

Duncan Murdoch

> 
> I could pick them by hand, but that is about 15 colours more than I know (I have a detailed colourchart, but the visual differences between ’skyblue’ and ’slategrey’ elude me when plotted as dots on a plot).
> 
> Cheers
> 
> F
> --
> Federico Calboli
> LBEG - Laboratory of Biodiversity and Evolutionary Genomics
> Charles Deberiotstraat 32 box 2439
> 3000 Leuven
> +32 16 32 87 67
> 
> 
> 
> 
> 
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> 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.
>




More information about the R-help mailing list