Today is the Solstice, and pretty soon the dog days of sumer will be here. (Though, for those of us in the Northeast, we’ve already seen our fair share.) As things begin to heat up, I figured it would be appropriate to highlight some of the ways oceanographers visualize sea surface temperature data.
Temperature is a scalar variable, and its values are represented by continuous real numbers. Other variables types include categorical, vector or arrays (like RGB images), but we’ll save those for another day.
Temperature data collected at a singular point can easily be represented as numerical value (i.e. 76 degrees C), or if collected over a period of time, a time-series graph displaying temperature values over time can be easily drawn. Satellites, though, collect data over a large spatial area, meaning the dataset is inherently 3-dimensional. Each data point consists of a latitude (X position), longitude (Y position) and temperature (Z) value for each data point. The visualization challenge is figuring out how to display this 3D dataset on a 2D graph.
The most common solution is to create a pseudo-color image based on the temperature data. The trick is choosing the best colors to represent temperature values. The following are just a few examples.
The Scientist’s Rainbow
Perhaps the most common colormap, the rainbow (know as Jet in Matlab parlance) is often a scientist’s default choice. Like a Swiss Army knife, it is a good all-purpose tool. It is especially handy in helping subtle features stand out.
This Mid Atlantic image demonstrates how the rainbow palette allows you to easily distinguish small features within the range of a degree, even though the temperatures in the entire image range from 41 to 80 degrees Fahrenheit.
As useful as it is, the rainbow does have some major weaknesses. It is practically useless for colorblind viewers. In addition, it is important to keep in mind that non-scientists often associate rainbow representations with temperature, and only temperature. There is something intuitive about the red=hot and blue=cold extremes. Therefore, when creating images for public audiences it is unwise to use rainbow coloring for anything other than temperature, unless you enjoy confusing users.
An Alternate Choice
Given an infinite number of available colors (or at least 4 billion on modern displays), it’s easy to create an alternative color map. But balancing the need to highlight nuances in a dataset with accessibility for colorblind users while also keeping an image aesthetically pleasing is no small task.
Luckily, the artists at NASA’s Earth Observatory have come up with good alternatives over the years.
Hurricane Ready Temperatures
There is also no reason that colors need to be evenly distributed. If there is a scientific need to represent a dataset in a particular way, then adjusting the color map to highlight the message that needs to be communicated is certainly appropriate.
For instance, Tropical Storms develop best over waters that are above 80 degrees Fahrenheit. This image from NASA’s Earth Observatory, clearly shows those portions of the Atlantic Ocean that are ripe for hurricane development. For an alternate take, check out this recent image from NOAA’s Environmental Visualization Lab.
Finally, sometimes it’s not the temperature value you want to represent, but the difference between the current temperature and a historical average. This is referred to as an anomaly, and it is often graphed slightly differently as it is a divergent dataset. Anomalies are typically represented as positive and negative differences, colored using red and blue respectively. Differences close to zero are left white.
This SST Anomaly image is from May 2011. These images are used to track El Nino and La Nina patterns, among other processes.
Well, that’s a quick roundup of some common examples. Do you have your own favorite way of coloring spatial maps of temperature or other datasets?
For more, check out the excellent primer Use of Color in Data Visualization by Robert Simmon.