Skip to content

Color schemes that work for people with color-deficient vision

3 messages · Scott Waichler, Duncan Murdoch, Thomas Lumley

#
A recent article in the earth science literature cited below and available at
http://geography.uoregon.edu/datagraphics/EOS/
points out that rainbow color schemes and mixtures of green and yellow 
can be troublesome for people with color-deficient vision.  
The authors propose alternative schemes that can be viewed and downloaded
in RGB, HSV, CMYK, and RGB256 formats from 
http://geography.uoregon.edu/datagraphics/color_scales.htm.
I have translated their RGB definitions into the hex color names given below.

Ironically, their article appeared on the same page of one that used
a rainbow color pattern to show climate patterns.  I'm not color-blind but
I still had trouble figuring out which end of the scale some of the colors belonged to.

Light A. and P.J. Bartlein, 2004.  "The end of the rainbow?  Color schemes for improved 
data graphics," EOS Transactions of the American Geophysical Union 85(40):385.

BrowntoBlue.10 <- c("#663000", "#996136", "#CC9B7A", "#D9AF98", "#F2DACE", "#CCFDFF", "#99F8FF", "#66F0FF", "#33E4FF", "#00AACC")
BrowntoBlue.12 <- c("#331A00", "#663000", "#996136", "#CC9B7A", "#D9AF98", "#F2DACE", "#CCFDFF", "#99F8FF", "#66F0FF", "#33E4FF", "#00AACC", "#007A99")
BluetoDarkOrange.12 <- c("#1F8F99", "#52C4CC", "#99FAFF", "#B2FCFF", "#CCFEFF", "#E6FFFF", "#FFE6CC", "#FFCA99", "#FFAD66", "#FF8F33", "#CC5800", "#994000")
BluetoDarkOrange.18 <- c("#006666", "#009999", "#00CCCC", "#00FFFF", "#33FFFF", "#66FFFF", "#99FFFF", "#B2FFFF", "#CCFFFF", "#E6FFFF", "#FFE6CC", "#FFCA99", "#FFAD66", "#FF8F33", "#FF6E00", "#CC5500", "#993D00", "#662700")
DarkRedtoBlue.12 <- c("#2A0BD9", "#264EFF", "#40A1FF", "#73DAFF", "#ABF8FF", "#E0FFFF", "#FFFFBF", "#FFE099", "#FFAD73", "#F76E5E", "#D92632", "#A60021")
DarkRedtoBlue.18 <- c("#2400D9", "#191DF7", "#2957FF", "#3D87FF", "#57B0FF", "#75D3FF", "#99EBFF", "#BDF9FF", "#EBFFFF", "#FFFFEB", "#FFF2BD", "#FFD699", "#FFAC75", "#FF7857", "#FF3D3D", "#F72836", "#D91630", "#A60021")
BluetoGreen.14 <- c("#0000FF", "#3333FF", "#6666FF", "#9999FF", "#B2B2FF", "#CCCCFF", "#E6E6FF", "#E6FFE6", "#CCFFCC", "#B2FFB2", "#99FF99", "#66FF66", "#33FF33", "#00FF00")
BluetoGray.8 <- c("#0099CC", "#66E6FF", "#99FFFF", "#CCFFFF", "#E6E6E6", "#999999", "#666666", "#333333")
BluetoOrangeRed.14 <- c("#085AFF", "#3377FF", "#5991FF", "#8CB2FF", "#BFD4FF", "#E6EEFF", "#F7FAFF", "#FFFFCC", "#FFFF99", "#FFFF00", "#FFCC00", "#FF9900", "#FF6600", "#FF0000")
BluetoOrange.10 <- c("#0055FF", "#3399FF", "#66CCFF", "#99EEFF", "#CCFFFF", "#FFFFCC", "#FFEE99", "#FFCC66", "#FF9933", "#FF5500")
BluetoOrange.12 <- c("#002BFF", "#1A66FF", "#3399FF", "#66CCFF", "#99EEFF", "#CCFFFF", "#FFFFCC", "#FFEE99", "#FFCC66", "#FF9933", "#FF661A", "#FF2B00")
BluetoOrange.8 <- c("#0080FF", "#4CC4FF", "#99EEFF", "#CCFFFF", "#FFFFCC", "#FFEE99", "#FFC44C", "#FF8000")
LightBluetoDarkBlue.10 <- c("#E6FFFF", "#CCFBFF", "#B2F2FF", "#99E6FF", "#80D4FF", "#66BFFF", "#4CA6FF", "#3388FF", "#1A66FF", "#0040FF")
LightBluetoDarkBlue.7 <- c("#FFFFFF", "#CCFDFF", "#99F8FF", "#66F0FF", "#33E4FF", "#00AACC", "#007A99")
Categorical.12 <- c("#FFBF80", "#FF8000", "#FFFF99", "#FFFF33", "#B2FF8C", "#33FF00", "#A6EDFF", "#1AB2FF", "#CCBFFF", "#664CFF", "#FF99BF", "#E61A33")
GreentoMagenta.16 <- c("#005100", "#008600", "#00BC00", "#00F100", "#51FF51", "#86FF86", "#BCFFBC", "#FFFFFF", "#FFF1FF", "#FFBCFF", "#FF86FF", "#FF51FF", "#F100F1", "#BC00BC", "#860086", "#510051")
SteppedSequential.5 <- c("#990F0F", "#B22D2D", "#CC5252", "#E67E7E", "#FFB2B2", "#99700F", "#B28B2D", "#CCA852", "#E6C77E", "#FFE8B2", "#1F990F", "#3CB22D", "#60CC52", "#8AE67E", "#BCFFB2", "#710F99", "#8B2DB2", "#A852CC", "#C77EE6", "#E9B2FF", "#990F20", "#B22D3C", "#CC5260", "#E67E8A", "#FFB2BC")

Scott Waichler
Pacific Northwest National Laboratory
scott.waichler at pnl.gov
#
On Tue, 02 Nov 2004 13:04:48 -0800, Scott Waichler
<scott.waichler at pnl.gov> wrote:

            
Thomas Lumley has just written a couple of functions that make
experimentation with scales like this a lot easier.  They're currently
in R-devel, and will appear in R 2.1.0 next spring.  If you want to
play with them before that, you can get the source and the docs from 

https://svn.r-project.org/R/trunk/src/library/graphics/R/colorRamp.R

and 

https://svn.r-project.org/R/trunk/src/library/graphics/man/colorRamp.Rd

Duncan Murdoch
#
On Tue, 2 Nov 2004, Scott Waichler wrote:

            
I'll add these to the dichromat package if they don't go in anywhere else.

Also note that the ColorBrewer colors scheme at www.colorbrewer.org have 
comments on which ones work for color-deficient viewers and also for 
other problem settings (eg cheap inkjet printers, digital projects, B&W 
photocopies).  These color schemes, though not the metadata, are in the 
RColorBrewer package.

 	-thomas