Richard Koehler, PhD, PH
CEO, Visual Data Analytics, LLC
The flexibility of Surfer to plot various types of data is impressive. Yet with a change in perspective, the versatility of Surfer can be expanded even further to cover a whole new class of plots. Visual Data Analytics routinely uses Surfer to plot time-series data as image (raster) maps. This allows the visualization and understanding of large temporal datasets not possible with most other ways of displaying time-based data.
By turning a date into two temporal coordinates, a "time map" is possible. The X axis is a short term time step (such as daily) while the Y axis is a longer time step (such as year). By having the X axis increase to the right and the Y axis increase upward, the data fall within the first quadrant of the plot.
Above is an example of the grid format used to generate time maps (Koehler, 2004).
One great example of such a Surfer plot is USGS Colorado River at Lees Ferry, AZ streamflow record (station 09380000). This particular location is one of the most important water resources in the western United States. Lee's Ferry is at the division between the Upper and Lower Colorado River Basins. An extensive political and legal "Law of the River" history can be found at: http://www.azwater.gov/AzDWR/StateWidePlanning/CRM/LawoftheRiver.htm
The Lees Ferry site is about one mile downstream of Glen Canyon Dam/Lake Powell and is upstream of Grand Canyon National Park. The timing and distribution of water in the river is critically important to a range of users. Because the station was in place before the construction of Glen Canyon Dam, the record shows both pre- and post-dam flows making for an interesting comparison.
For the traditional hydrograph below, the X axis is time (daily values) while the Y axis is the volume of streamflow (one cubic feet per second = 448.8 gallons per minute).
The above is a traditional hydrograph from the United States Geological Survey (USGS).
While there are some patterns apparent in the traditional hydrograph, a wealth of information is simply hidden. This is where the power of Surfer comes into play. Below is a map of the same dataset plotted as a raster time map (an image map) in Surfer. This map reveals many previously hidden patterns. A key to patterns is shown below.
The same data is plotted as a raster time map (an image map) in Surfer. Temporal patterns are more easily discernible.
Data source: http://waterdata.usgs.gov/usa/nwis/uv?09380000
Another interesting time map is for adult Chinook salmon swimming upstream on the Columbia River. There are fish ladder structures to help the salmon bypass Bonneville Dam. The traditional display uses line graphs and a spaghetti plot. In this case only five years of daily data are shown along with a 10-year average.
The number of Chinook salmon passing the dam is typically displayed as a series of line graphs. Major
patterns are easy to discern, but small patterns or seasonal variability is hard to identify.
When the data are plotted as a raster time map in Surfer, more temporal patterns are identifiable.
When the number of Chinook salmon passing the dam is displayed as a raster time map in Surfer,
temporal variability is more easily identified.
Data source: http://www.nwd-wc.usace.army.mil/
The spring run can be seen as higher daily fish counts for late April, the summer run is in June with an obvious low count from 1975 to 2000 and the fall run is late August through September with notable increases in the last few years.
Steps to Create a Raster Time Map
It takes surprisingly few steps to create a time map. The key is to format the Day and Year within your input file. The following uses an Excel spreadsheet as a guide though other programs could be used. Here are the formulae for using a calendar year. The X-axis is Day and the Y axis is Year. The Z value would be the time series such as flow. Arrange your input data as Column A = Day (x), Column B = Year (y), Column C = Value (z)
Convert your data into a format where you have three columns of data (X, Y and Z). The X column is the
day of the calendar year, the Y column is the calendar year, and a third column is the data variable.
Once you have the data in the correct format, you can create the time map in Surfer using these steps:
- Click Grid | Data.
- In the Grid Data dialog, use the following gridding options:
- Set the Gridding Method to Nearest Neighbor, as you want to place a z value at each grid node without interpolation.
- Click the Advanced Option button, and on the General page, set the Range 1 and Range 2 values under Search to be a number smaller than the distance between nodes such as 0.001. This ensures missing data are not estimated. Click OK.
- In the Grid Line Geometry section, the Spacing values will depend on the units being used. For X=days and Y=years, the Spacing is typically 1.
Use the Nearest Neighbor gridding method and a Spacing of 1 for X=days and Y=years.
- When you have entered the option values and given the grid file a name, click OK.
- The resulting GRD file can then be used to create an image file. Click Map | New | Image Map.
- Select the GRD file created and click Open.
- Select the Image layer in the Object Manager and in the Property Manager, on the General page:
- Uncheck Interpolate pixels.
- Uncheck Enable hill shading.
Uncheck Interpolate Pixels and Enable hill shading in the image layer properties.
- The default colormap is Terrain but can be changed to another that works for you by clicking the color button to the right of Colors and selecting any other predefined colormap.
- Note that the colormap has an option to use a logarithmic scale. Using this scale can help bring out more patterns than a linear scale, if the Z range in your grid is large. To enable this, click the (…) button to the right of Colors. In the Colormap dialog, check Logarithmic scaling and click OK.
When the Z range for the grid is large, you may be able to emphasize patterns
using a logarithmically scaled colormap. This will keep a few large values
from dominating the color range.
- Add a color scale by checking the Show color scale check box.
- You can add the finishing touches to the map by adding axis titles, a post layer showing circles for the first day of each month, and monthly headers.
Axis titles, a post layer and additional text helps complete the time map.
Displaying temporal data as raster time maps is a significant improvement over traditional line and scatter plots to see major patterns over time, small or large scale shifts in patterns, and small scale variability in the data. All the data is displayed at once, in one map, in an easy-to-view manner.
- Koehler, R. 2004. Raster-based Analysis and Visualization of Hydrologic Time-Series. Ph.D. dissertation, University of Arizona. Tucson, AZ pp189.