I need large set (20 and more) of contrasted and easily visually-distinguishable colors for coloring different datasets on a scientific plot (the set of colors should not include white or black, and colors should be as bright as possible).
The plot is generated programmatically and intended to be included in a presentation which will be displayed using a projector.
Are there any ready-made sets of colors for such a task (I need colors as a set of RGB values)?
Or maybe there is some algorithm which generates such a set of colors programmatically (I use Wolfram Mathematica for plot generation)?
P.S. The plot itself may look, for example, similar to this one:
Thanks to great work
1) The set of 22 colours of maximum contrast proposed by Kenneth Kelly in the work:
Specifics (citing P. Green-Armytage): "The order of colours in Kelly's list was planned so that there would be maximum contrast between colours in a set if the required number of colours were always selected in order from the top. <...> Kelly took care of the needs of people with defective color vision. The first nine colours would be maximally different for such people as well as for people with normal vision. These nine colours are also readily distinguishable by colour name."
Additional information (citing P. Green-Armytage): "The ISCC set up Project Committee 54 with the intention of bringing Kelly's work up to date. However, the committee decided that, for what they were trying to do, they could not improve on Kelly's set of colours."
2) The set of 25 colors suggested by Robert and Ellen Carter in the work:
Specifics (citing P. Green-Armytage): "Carter and Carter make reference to Kelly's work and verify his assumption that the ease with which two colours can be discriminated depends on how far apart the colours are in colour space. From the colour spaces available at the time they chose CIE Luv* as most appropriate for their study. <...> They found that people's ability to identify colours correctly diminished rapidly when the distance between colours was less than 40 CIE Luv* units." In their work they present a set of 25 colors separated by at least 51.6 CIE Luv* units.
3) The set of 26 colors for the Colour Alphabet Project suggested by Paul Green-Armytage in the above-cited work "A Colour Alphabet and the Limits of Colour Coding." This color set is designed for use with white background. RGB triplets of this set are:
4) There is another excellent article on the subject:
This article contains nice set of 26 distinct colors on the page 11:
RGB triplets of this set are:
6) A color dictionary of 269 maximally distinct colors from all previous colors (I used this function for getting RGB triplets from the hex codes):
Here are the hex codes from linked blog post (complete listing of 269 hex codes of Tatarize's color alphabet hidden in the history of changes for readability).
Potentially useful web-applications:
8) List of 20 Simple, Distinct Colors by Sasha Trubetskoy:
"I made an easy to use list of colors that is optimized across all media; not without tiny compromises, of course, such as inexact CMYK conversions. The main issue is choosing â€œpureâ€ (e.g. 100% magenta) or web-safe colors leads to gawdy, distracting and imbalanced color palettes. This is my attempt at a nice palette that works well for network or transit-style diagrams, or for categorical data."