Professional Documents
Culture Documents
How To Evaluate and Compare Color Maps: Geophysical Tutorial
How To Evaluate and Compare Color Maps: Geophysical Tutorial
How To Evaluate and Compare Color Maps: Geophysical Tutorial
Geophysical tutorial
How to evaluate and compare color maps
Downloaded 01/25/15 to 190.13.62.20. Redistribution subject to SEG license or copyright; see Terms of Use at http://library.seg.org/
Introduction
This is the first of a two-part tutorial on color maps. My
goal is to share the methods I developed (Niccoli, 2012;
Niccoli and Lynch, 2012; Niccoli, 2013) to evaluate default
color maps and choose more perceptual alternatives (Part 1)
and to make your own map based on perceptual principles
(Part 2). For both parts, there will be an accompanying IPython Notebook with extended examples and analyses and
open data. You can find the notebooks and code at github.
com/seg/tutorials.
The rainbow is dead
Rainbow palettes are not perceptual; they do not match
how the brain intuitively interprets color. A wealth of literature (e.g., Montag, 1999; Rogowitz et al., 1999; Rogowitz
and Kalvin, 2001; Light and Bartlein, 2004; Borland and
Taylor, 2007; Borkin et al., 2011) shows that nonperceptual
palettes are poor choices for maps and data visualization. To
represent interval data (e.g., elevation or time structure) or ratio data (e.g., seismic amplitude), the equal steps in the magnitude of the data require equal perceptual distances between
points in the color scale. Therefore, good palettes are those
that have a strictly increasing lightness (or intensity) profile.
You can convince yourself of how bad some palettes are
with the simple experiment in Figure 1, in which I deconstruct spectral, one of the default palettes from the matplotlib
plotting library commonly used in scientific computing in
Python. The full code to generate this figure and all the figures in this article are in the IPython Notebook.
The key commands are:
data = numpy.arange(16)
imshow(data, interpolation=none, cmap=spectral)
intensity = 0.2989 * rgb[:,0] \
+ 0.5870 * rgb[:,1] \
+ 0.1140 * rgb[:,2]
imshow(intensity, interpolation=none, cmap=gray)
sorted_intensity = numpy.sort(intensity.astype(int))
August 2014
Figure 1. (a) Color bar made using the spectral color map. (b) Intensity of the color bar, calculated with the algorithm shown in the text.
(c) The same map, with elements sorted by intensity. (d) Full-color
version of the intensity-sorted map.
Downloaded 01/25/15 to 190.13.62.20. Redistribution subject to SEG license or copyright; see Terms of Use at http://library.seg.org/
Figure 2. (a) The Great Pyramid, with monotonically increasing elevation, using the spectral palette, and (b) the lightness of the color map.
Clearly, we have introduced artificial discontinuities that are not present in the data, which by construction form a perfect polyhedron.
Figure 3. (a) The Great Pyramid with the LinearL palette from my blog. (b) It has a linear lightness profile.
911
Downloaded 01/25/15 to 190.13.62.20. Redistribution subject to SEG license or copyright; see Terms of Use at http://library.seg.org/
Figure 4. A horizon from the Penobscot 3D seismic volume, colored with (a) spectral and (b) LinearL color maps. Color bars are omitted
intentionally.
Montag, E., 1999, The use of color in multidimensional graphical
information display: IS&T Seventh Color Imaging Conference:
Color Science, Systems, and Applications.
Niccoli, M., 2012, How to assess a colourmap, in M. Hall and E. Bianco,
eds., 52 things you should know about geophysics: Agile Libre, 3637.
Niccoli, M., 2013, Several articles on the My Carta blog, mycarta.
wordpress.com; see wp.me/p1IlJY-js.
Niccoli, M., and S. Lynch, 2012, A more perceptual color palette for
structure maps: Canada GeoConvention, abstract.
Rogowitz, B., and A. Kalvin, 2001, The Which Blair project: A
quick visual method for evaluating perceptual color maps: IEEE
Proceedings, Visualization 2001.
Rogowitz, B., A. Kalvin, A. Cohen, and T. Watson, 1999, Which
trajectories through which perceptually uniform color spaces produce appropriate color scales for interval data? IS&T
912
August 2014