ColorBrewer seems to be very useful in selecting a color pallet to represent factors that have up to 12 possible values.

I have 28.

Is it a horrible idea to represent 28 variables with color? If so, could you suggest an alternative visual indicator?

Currently I'm using the colors for column side colors in a heatmap shown below. As you can see, the Strain column is not very informative:

Strain/Condition Image

  • $\begingroup$ Is it absolutely necessary to use all 28 of them? You could use some dimensionality reduction technique and view them, if not necessary. $\endgroup$
    – tomar__
    Oct 29, 2017 at 21:08
  • $\begingroup$ Interesting. Dimenaionality reduction on categorical variables? Can you say more? $\endgroup$
    – kmace
    Oct 29, 2017 at 21:09
  • $\begingroup$ An unsupervised method may be Self-Organizing maps. Somoclu is a great tool. It may also help with the visualization. $\endgroup$
    – tomar__
    Oct 29, 2017 at 21:25
  • $\begingroup$ @kmace: Read about en.wikipedia.org/wiki/Correspondence_analysis $\endgroup$
    – Emre
    Oct 30, 2017 at 4:10
  • $\begingroup$ Ideally, don't really on colour as your only method for distinguishing important information. Colour blindness is a thing. $\endgroup$
    – Ken Syme
    Sep 28, 2018 at 11:45

2 Answers 2


This is the best solution I have come up with, I simply found a larger color pallet. The largest I could find was:


So I merged d3 catagory 20 with the first few from d3 category20b which was inspired from this heatmap tools heatmap tool's source code:

enter image description here


It appears your data is hierarchical. One option is to use a color hierarchy to help understand the relationships.

For example at the first split into two groups, you could have one group represented with a cool color (e.g., blue) and the other group represented with a warm color (e.g., red). Then at the next split in the hierarchy, those color palettes are split again. For example, the cool color is split into different shades of blue.

This would help with roll-up analysis. Instead of showing each individual level, show related groups together.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.