Slide 1

Slide 1 text

Perceptions of matplotlib colormaps Kristen M. Thyng Texas A&M University July 10, 2014 Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 1 / 15

Slide 2

Slide 2 text

CIELAB Color Model http://eschicleypega.blogspot.com Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 2 / 15

Slide 3

Slide 3 text

Lightness of matplotlib Colormaps http://matplotlib.org/examples/color/colormaps reference.html Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 3 / 15

Slide 4

Slide 4 text

Lightness of matplotlib Colormaps Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 3 / 15

Slide 5

Slide 5 text

Lightness of matplotlib Colormaps http://matplotlib.org/examples/color/colormaps reference.html Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 4 / 15

Slide 6

Slide 6 text

Lightness of matplotlib Colormaps Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 4 / 15

Slide 7

Slide 7 text

Perceived Lightness: Weber-Fechner Law (and Stevens) 1 1 2 2 3 4 4 Additional Parts Black 8 Albers, J. (1975). Interaction of color. Yale University Press. Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 5 / 15

Slide 8

Slide 8 text

Improvement to Binary Colormap? Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 6 / 15

Slide 9

Slide 9 text

Improvement to Binary Colormap? Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 6 / 15

Slide 10

Slide 10 text

Printing to Grayscale Lots of ways to convert to grayscale Gray = (Red * 0.2126 + Green * 0.7152 + Blue * 0.0722) (or similar∗) Use luminance ∗ http://www.tannerhelland.com/3643/grayscale-image-algorithm-vb6/ Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 7 / 15

Slide 11

Slide 11 text

matplotlib Colormaps in Grey Scale Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 8 / 15

Slide 12

Slide 12 text

matplotlib Colormaps in Grey Scale Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 8 / 15

Slide 13

Slide 13 text

matplotlib Colormaps in Grey Scale Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 8 / 15

Slide 14

Slide 14 text

matplotlib Colormaps in Grey Scale Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 8 / 15

Slide 15

Slide 15 text

matplotlib Colormaps in Grey Scale Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 8 / 15

Slide 16

Slide 16 text

Color Blindness Protanopia (2% male population, half mild form) Deuteranopia (6% male population, mostly mild form) http://www.color-blindness.com Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 9 / 15

Slide 17

Slide 17 text

Color Blindness http://aspnetresources.com/tools/colorBlindness Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 10 / 15

Slide 18

Slide 18 text

Color Blindness http://aspnetresources.com/tools/colorBlindness Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 11 / 15

Slide 19

Slide 19 text

Color Blindness http://aspnetresources.com/tools/colorBlindness Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 12 / 15

Slide 20

Slide 20 text

Color Blindness http://aspnetresources.com/tools/colorBlindness Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 13 / 15

Slide 21

Slide 21 text

Recommendations Best colormap depends on application, but for form information, perceptual colormaps are best Perceptual colormaps monotonically increase with lightness Not clear (to me) what functional relationship with L is best Many ways to convert to grayscale — luminance is a good proxy to decide on a good map Most common color blindness problem is red-green — try to avoid for reaching audiences most effectively Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 14 / 15

Slide 22

Slide 22 text

Resources All around helpful information on colormaps: Matteo Niccoli: http://mycarta.wordpress.com/2012/05/29/the- rainbow-is-dead-long-live-the-rainbow-series-outline/ Comparison of 7 methods of converting to grayscale: http://www.tannerhelland.com/3643/grayscale-image-algorithm-vb6/ Color blindness: http://www.color-blindness.com Link to slides: https://github.com/dmcdougall/scipy14-colormaps Kristen M. Thyng (Texas A&M) SciPy 2014 July 10, 2014 15 / 15