8

I'm working on a map showing on which days garbage is collected in different areas. That means it's pretty tempting to colour code each zone with a different colour representing a day of the week.

Are there any conventions to follow? Is 7 colours too many?

Here's what it looks like at the moment:

enter image description here

My colours so far follow the rainbow from Monday to Friday (red, yellow, green, blue, purple) then light grey and dark gray for Saturday and Sunday.

Here are the numerical values in the image, for interest. (CartoCSS, Tilemill.)

@s: 60%;
@l: 70%;
@monday:    hsl(  0, @s, @l);
@tuesday:   hsl( 60, @s, @l);
@wednesday: hsl(110, @s, @l);
@thursday:  hsl(200, @s, @l);
@friday:    hsl(250, @s, 80%);
@saturday:  hsl(  0, 0,  70%);
@sunday:    hsl(  0, 0,  70%);

So the weekdays are all the same luminosity and saturation except Friday, which I found seemed too dark, for some reason. I originally spaced the hues equally around the spectrum, but found that there were two blues too similar, and several of the colours just weren't attractive.

4

3 Answers 3

4

Given that you have exactly seven classes (do they really pick up on Sundays?), and that they're categorical (not quantitative) classes, I'd say that having seven different hues and yet similar intensities and saturation levels is a good way to go. You could probably even squeeze, say, orange and indigo/violet in there, in place of the grays.

While you could use near regular spacing along/around the hue scale, ultimately, you should rely on actual perceived differences in color to guide your choices (and you seem to have already experimented with this).

Given that some folk are color blind, or that some might be seeing a monochrome (gray-level) reproduction of your map, consider also combining a unique, subtle pattern or texture with each color, to aid in differentiation.

‡ whichever one is not like the purple you already have

2
  • Just read your follow-up comment. Yes, those are also good things to be doing. (And maybe add them into the body of the Q.)
    – Martin F
    Apr 9, 2015 at 3:38
  • Sundays? Not as far as I know but probably need to leave the possibility - I don't have a complete dataset yet. Apr 9, 2015 at 4:30
2

7 colors is not too many. My go-to resource for at least getting a start on a color scheme is ColorBrewer, their tool will allow you to pick the number of data classes you have, the nature of the data (quantitative, qualitative), and a color scheme (dark, pastels, etc), and will give you a preview of how your data will look and the color codes you'd need to implement the scheme. Go there, choose a Qualitative color scheme, and play around.

I wouldn't use a shade of gray or black unless it's to indicate the absence of trash pickup on that day. If trash is picked up every day, use a 7-color scheme. If it's picked up on weekdays only, use a 5-color scheme during the week and gray on the weekends to indicate no pickup on those days.

2
  • I would also echo the use of gray, or rather not to use it. Along with Martin's answer, I was going to comment early on that it's ROYGBIV not RYGBP, so you already have your seven colors there. But then I got to thinking maybe you intentionally chose shades of gray for the weekend because there was no pickup those days (there isn't around here).
    – Chris W
    Apr 9, 2015 at 20:20
  • As you can see in the map so far, there are only two zones that are Saturday, and none that do Sunday. Apr 9, 2015 at 23:41
1

It is not clear whether “day of week” has as categorical/nominal or an ordinal scale. Since your colors “follow the rainbow from Monday to Friday” I assume that the order/sequence of the days is important for your application/analysis. Therefore, the following applies only if “day of week” has a ordinal scale in your application/analysis:

I am not aware of a cartographic convention for day color. But 7 colors (“rainbow”) are too much because a sequence is not recognizable.

In the first step the scale level has to be determined. In my opinion, the data are ordinal scaled (in opposite to categorical/nominal, interval, ratio).

With ordinal scaled data the color must be visually ordered (from Monday to Sunday).

In a HSV color model you have three options to adjust the color:

  • hue (green, blue, red, …)
  • saturation (amount of gray)
  • value (brightness)

In your map you used 7 completely different hues to vary the color (red, yellow, green, blue, purple, light grey, dark gray). These are too many. A sequence is not recognizable.

Here is a good explanation how to build a color sequence (http://colorusage.arc.nasa.gov):

With ordinal data the labeling colors of the graphic elements must be not only discriminable and identifiable, but also visually ordered. The color assignments have to express the sequential relationships among the graphic elements. This can be achieved with a hue sequence, a saturation sequence, a lightness sequence, or some combination of the dimensions. Monopolar hue sequences can be obtained by mixtures of varying amounts of two non-opponent hues, i.e., some pair other than red/green or yellow/blue. Saturation and lightness are naturally visually ordered. Combinations of saturation and lightness work well (see example below). For bipolar ordinal labeling a combination of saturation and lightness in two hues works well.

Here are quick examples showing a better color sequence than your "rainbow" colors:

Example: gradient between 2 hues (yellow to orange): gradient between 2 hues

Example: 6 different saturations/values: 6 different saturations/values

Example: 6 different values: 6 different values

4
  • 4
    While I agree there is an obvious order in the days of the week in that they occur in a fixed sequence, an ordinal colour scale works best when the order reflects a particular quality. Because 'Monday' is not "more" or "less" than 'Tuesday', a categorical scheme seems to fit my intuition better. Further, any given 'Tuesday' is both before and after a 'Monday', so the implicit order actually breaks down unless you pick a static day of the week with which to begin the sequence (Monday or Sunday, traditionally). I prefer OP's colours; they're easier to recognise. Apr 9, 2015 at 10:58
  • 1
    Yeah, I don't think I totally agree that the days of the week are a scale. In the bottom two maps, it looks like there is "more of something" in the north/northeast and "not much of something" in the middle. Also, I intentionally made Saturday and Sunday shades of grey to reduce the number of colours to 5. Apr 9, 2015 at 12:40
  • Thanks for the comments Steve and @alpha-beta-soup. I agree that it is not so clear whether the scale is nominal or ordinal. I assumed that for Steve, there exists a sequence (because he said “follow the rainbow from Monday to Friday”). But it certainly depends on the application/analysis you want to do. If you treat “day” as nominal: your rainbow colors are good. But I would replace gray (Saturday, Sunday) with a color.
    – Jens
    Apr 9, 2015 at 13:24
  • That's a minor comment (follow the rainbow) upon which to base your assumption about the data being ordinal. Days follow a very "weak" sequence, and so do the colors of the rainbow. Hence, they make a good match. Your maps look fine, though, for anything that could be considered a "geographic surface".
    – Martin F
    Apr 9, 2015 at 15:04

Your Answer

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

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