COLOR REPRESENTATION OF ASPECT AND SLOPE SIMULTANEOUSLY
Cynthia A. Brewer and Ken A. Marlow
Department of Geography, San Diego State University
Re-built page linked in Fugitive Publications
Paper published in:
Proceedings, Eleventh International Symposium on Computer-Assisted Cartography (Auto-Carto-11), Minneapolis, October/November 1993, pp. 328-337.
Maps from this research are cover art for Visualization in Modern Cartography, 1994, and Research/Penn State, September 1995.
Example color maps: segment1, segment2, color legend (see Figure 1 for labels)
ABSTRACT
Systematic variations in all of the perceptual dimensions of color were used for the aspect/slope color scheme discussed in this paper. Eight aspect categories were mapped with an orderly progression of colors around the hue circle. Three slope categories were mapped with differences in saturation, and near-flat slopes were mapped with gray for all aspects. Lightness sequences were built into both the aspect and slope progressions to produce systematic perceptual progressions of color throughout the scheme (among all 25 map categories). These lightness sequences approximated relief shading and were crucial for visualization of the shape of a continuous terrain surface. Use of the HVC color system allowed easy specification of 25 colors that accurately met these interlinked color-appearance criteria. Our aspect/slope color scheme allows accurate terrain visualization while simultaneously categorizing the surface into explicit aspect and slope classes represented within a single, two-dimensional, planimetric map.
INTRODUCTION
In 1990, Moellering and Kimerling presented a method of coloring aspect categories for the visual presentation of terrain or other statistical surfaces. They named this process MKS-ASPECT (GIS World 1991). Terrain data were classed into aspect categories that were appropriately symbolized with different saturated hues. In addition to using hue to symbolize qualitative aspect categories, inherent differences in the lightness of these saturated hues were ordered to produce lightness gradients that approximated relief shading. Thus, yellow, the lightest hue, was used for northwest-facing slopes and dark blue was used for southeast-facing slopes. The remaining categories were colored with saturated hues from an ordered progression around the hue circle (yellow, green, cyan, blue, magenta, red, orange).
In this paper, we describe an improvement on the MKS-ASPECT color scheme that we developed with the aid of the Tektronix HVC color system (Taylor and others 1991). In addition to aspect categories, we classed our terrain data into slope categories and represented slope with differences in the saturation of each aspect hue (Figure 1). We present the development of our aspect/slope color scheme in the first section of this paper. In the second section, we provide an outline of the ways we processed terrain data with ARC/INFO GIS software. The importance of color-system properties to development of this color scheme will be described more fully at the Auto Carto 11 conference where color examples can be presented. The full-color aspect/slope map will also be presented at the conference.
COLOR SCHEME DEVELOPMENT
The maximum saturations of hues that can be produced on a CRT vary widely in both their lightness and saturation. The wide, screened line plotted on the Hue/Chroma graph in Figure 2 shows maximum saturations varying from 93 Chroma for red to 41 Chroma for cyan. The lightness of colors of maximum saturation vary from 95 Value for yellow (at 85° Hue) to 38 Value for purple-blue (at 265° Hue), which is 180° around the Hue circle from yellow.
A focus on the characteristics of colors of maximum saturation, however, omits a much greater variety of choices that are lighter, darker, and less saturated than each saturated color and that fill out the whole of the three-dimensional HVC color space. We used a sample of these colors to map aspect and slope simultaneously. Maximum Chromas of hues at specific lightness levels (35, 50, 65, 80, and 95 Value) are plotted in Figure 2 with progressively thicker lines. Figure 2 provides a schematic representation of HVC color space for the black-and-white medium of this proceedings.
Anchor Hues for Aspect Colors
To symbolize aspect and allow relief visualization, yellow was used for northwest aspects, as with the MKS-ASPECT scheme (the map had a north-up orientation). The yellow at 85° Hue has the highest Value (95) of all hues at maximum Chroma. Thus, 85° Hue was the initial anchor on the hue circle for this design problem. With this anchor, the easiest solution would have been to progress in 45° increments around the hue circle for maximum contrast between eight aspect categories. Unfortunately, two other restrictions on the solution interfered with this simple strategy.
First, all colors used to represent maximum-slope categories needed sufficient saturation that differentiable medium- and low-Chroma colors were available within each hue. We set the usable minimum at 45 Chroma, which provides increments of at least 15 Chroma units between slope classes: 0 to 5-percent slope (near flat with no hue), 5 to 20, 20 to 40, and greater than 40-percent slope (Figure 1). The gray circle in the center of Figure 2 tints all color positions below 45 Chroma (choice of this limit was a subjective decision based on iterative alterations of the color scheme). Figure 2 shows that the yellow at 85° is the only hue that attains a Chroma over 45 at the Value of 95. In addition, no colors between 155° and 225° Hue have Chromas greater than 45. Cyans are in this range. Moellering and Kimerling (1990) also had difficulty with maximum-saturation cyans because they were too light. The more fundamental problem with these hues is that they have limited saturation at all lightness levels.
The second restriction on color selection was that colors must progress from light to dark in both directions around the hue circle as aspect categories progress from northwest to southeast (NW-N-NE-E-SE and NW-W-SW-S-SE). We set the Value of the darkest color, for southeast aspects, at 35 because that provided four increments of 15 Value units between the darkest and lightest aspect colors (35, 50, 65, 80, 95). A Value of 35 also provided a reasonable range of hue choices with adequate Chroma for the darkest southeast category (Hues 255° to 295° have Chromas greater than 45 at 35 Value; Figure 2). Moellering and Kimerling (1990) attempted to match lightness measures to a cosine function (a common basis for automated relief shading), but we felt it was more important to produce equal and generous differences in lightness between all five categories within the two lightness progressions from northwest around to southeast. This strategy aided discrimination of aspect classes at all slope levels.
To be consistent with the chosen Value progression, east aspects were represented with colors one step lighter than the darkest southeast class at 35 Value. Moving toward cyan from the purple-blue side of the hue circle, 245° is the last hue with a Chroma greater than 45 at the next lightness step of 50 Value. Continuing around the hue circle, 135° is the first Hue angle at which the next lightness step (65 Value) is available at adequate saturation for the northeast maximum-slope category. A gap of 110° across the cyans exists, within which there are no useful colors available as saturated hues (use of these cyans at the desired lightness levels produced alarmingly grayish colors in the midst of a group of vibrant saturated hues for other aspects). Thus, the green at 135° and the cyan-blue at 245° provided two more anchors for aspect-hue selection in addition to yellow at 85°. The limited usefulness of the cyans is a restriction dictated by the limits of color CRT technology rather than a flaw in the HVC color specification system.
Selection of Remaining Aspect Hues
Use of 265° Hue for the darkest southeast aspects would have been a logical choice because it is the hue that has maximum saturation at low lightness and it is complementary to, or opposite, yellow on the HVC hue circle. However, it is only 20° from the anchor cyan-blue at 245° (discussed above). The higher saturations available in the purple-magenta-red-orange range of the hue circle provided good flexibility for color selection. Spanning the range from yellow at 85° to cyan-blue at 245° with equal Hue-angle increments produced color differences of 40° that were approximately equal in appearance (because HVC approximates a perceptually scaled color system). We felt that using large hue contrasts when possible was more important than maintaining complementarity.
Selection of hues at 40° increments also provided a good approximation of unique red at 5° and the other hues were reasonable representatives of hue names (orange at 45°, magenta at 325°, and purple at 285°). Note that Chroma was maintained above 45 with a Value progression from 35 to 95 for the maximum-slope categories (Figures 2 and 3). Moellering and Kimerling (1990) deleted a magenta range of hues as they worked with HLS because saturated magentas were too light for their south-aspect category. Working with a more sophisticated color system, it is apparent that magentas of the desired darkness have ample saturation for coloring steep slopes (unlike dark cyans).
The final hue-selection problem was choice of a green-yellow of 65 Value for north aspects. This color was squeezed between the yellow anchor at 85° Hue and the green anchor at 135° (both discussed above). An equal Hue increment of 25° assigned 110° Hue to north aspects. Although this hue increment produced less visual contrast between the three adjacent aspect categories (NW-N-NE), the reasons for maintaining 85° and 135° Hue categories outweighed this deficiency. To assist discrimination of the hues at lower saturations, we used a small Hue shift from 135° to 145° and 155° for lower slope categories (Figure 3). Discrimination of these aspect categories was also aided by lightness contrasts (note the bold Value numbers within Figure 3).
Slope Category Coloring
In addition to adding slope categories to the aspect color scheme, we also added a gray category of near-flat slopes (0 to 5 percent) that was represented without hue to encourage the interpretation that these areas had no aspect. Chang and Tsai (1991) have recommended that “flat” areas should be included as an aspect class on terrain maps because they found that errors in automated aspect calculations are concentrated in areas that are generally flat with minor landforms. As slopes became flatter within each aspect category, we reduced Chroma and set Value levels closer to 72, the flat-area Value. These dual progressions in both Value and Chroma with slope are graphed in Figure 3.
Initially, flat areas were represented with a 65-Value gray, the same middle Value as southwest and northeast aspects. This choice eliminated value contrasts between the slope categories for these directions, which caused slope colors to be difficult to distinguish. In the final scheme, the near-flat areas were represented with Value 72, which was midway between Values 65 and 80 that were used for maximum-slope categories. This decision produced lightness contrasts between all adjacent map classes (Figure 3).
ARC/INFO TERRAIN PROCESSING PROCEDURES
The aspect/slope map used to develope the color scheme was generated with a Sun/Sparc2 workstation using the TIN, GRID, and ARCPLOT modules of ARC/INFO (version 6.1). The map was developed from a database of digitized topography of Hungry Valley State Vehicular Recreation Area, a park of 19,000 acres that is located approximately 60 miles north of Los Angeles, California. Park elevations range from 3000 to 6000 feet. Figure 4 (not in this web version) shows shaded relief and slope maps of the park at reduced size to illustrate the terrain characteristics. The methods used to classify the terrain data for aspect/slope mapping are outlined in the sub-sections that follow.
TIN Creation
Initial coverages, or data layers, required for the project were a line coverage of digitized topography that extended beyond the park boundaries and a polygon coverage of the park boundary (HVTOPO and HVBOUND are corresponding file names in the command lists below). Development of the map required creation of a triangulated irregular network, or TIN, from the digitized topography. Creation of the TIN (HVTIN) was an intermediate step in the conversion of linear (contour) and point (spot) elevation values to a regular grid or lattice of elevations. Subsequent calculations of slope and aspect were made using the regular grid of elevations. Commands used to create the TIN follow:
- ARC: DISPLAY 9999 3
- ARC: CREATETIN HVTIN
- CREATETIN: COVER HVTOPO LINE SPOT
To verify the accuracy of the TIN coverage as a surface model, a line coverage (HVARC) was generated with the TIN module and it was clipped using the park boundary. The line coverage aided detection of errors by allowing observation of inappropriate triangles:
- ARC: TINARC HVTIN HVARC LINE
- ARC: CLIP HVARC HVBOUND HVARCCLP LINE
- ARC: ARCPLOT
- ARCPLOT: MAPEXTENT HVTOPO
- ARCPLOT: ARCS HVARCCLP
Similarly, assessment of the TIN accuracy was made by generating a contour map from the TIN and comparing it to the original topography coverage. Problems in the surface representation may require regeneration of the TIN after point elevations, hard breaklines, and soft breaklines are added to the original topography coverage to improve representation of surface features. The verification contour map (HVTINCON) was generated with the following command:
- ARC: TINCONTOUR HVTIN HVTINCON 40 440 SPOT # 1
- ARCPLOT was then used to display the resulting contour map:
- ARCPLOT: MAPEXTENT HVTOPO
- ARCPLOT: ARCS HVTINCON
Elevation Grid Creation
A lattice model (HVLATTICE) of the TIN (HVTIN) was generated using linear interpolation. Generation of the lattice produced a regular grid of elevation values that allowed representation and manipulation in ARC/INFO’s GRID module. Default settings were accepted for the interpolation, and lattice sampling was set to 10 coverage units (meters).
- ARC: TINLATTICE HVTIN HVLATTICE LINEAR
- enter (accepting defaults)
- enter
- enter
- DISTANCE BETWEEN MESH POINTS: 10
A grid coverage with a value-attribute table of integer values was developed from the lattice:
- ARC: GRID
- GRID: HVGRID1 = INT(HVLATTICE)
Grid generation was verified with the following two commands:
- GRID: LIST HVGRID1.VAT
- GRID: DESCRIBE HVGRID1
A visual check of the appropriateness of the distance between sample elevation points and of the linear interpolation method was made by generating and displaying an analytical hillshade model of the grid (the shaded relief map is shown at reduced size in Figure 4, not in this web version):
- GRID: HILLSHADEFULL = HILLSHADE(HVGRID1, 315, 70, ALL)
- GRID: AP MAPEXTENT HVTOPO
- GRID: GRIDPAINT HILLSHADEFULL VALUE IDENTITY WRAP GRAY
The resulting display of the grid indicated a reasonable resolution, and the grid was clipped to eliminate values outside the study area:
- ARC: LATTICECLIP HVLATTICE HVLATTICECLP
GRID was again enabled to convert the floating-point grid (HVLATTICECLP) to an integer grid:
- GRID: HVGRID2 = INT(HVLATTICECLP)
Aspect and Slope Map Creation
Aspect and slope grids were generated. For the slope calculations, coverage z units (vertical units) were converted from feet to meters to use the same units as horizontal measurements.
- GRID: HVASPECT1 = ASPECT(HVGRID2)
- GRID: HVSLOPE1 = SLOPE(HVGRID2, .3048, PERCENTRISE)
Values in both grids were converted to integers:
- GRID: HVASPECT2 = INT(HVASPECT1)
- GRID: HVSLOPE2 = INT(HVSLOPE1)
Generation of the aspect grid produced values ranging from –1 to 359 with 0 representing north. Cells that had a value of –1 represented flat areas with no aspect. These flat areas, which also had no slope, were represented by 0 in the slope grid.
A reclassed aspect grid (HVASPECT3) was created that was limited to eight classes corresponding to eight compass directions (N, NE, E, SE, S, SW, W, NW). The grid was reclassified by accessing an ASCII remap table (ASPECTREMAP, Table 1) that was previously created using the Sun system’s text editor.
- GRID: HVASPECT3 = RECLASS(HVASPECT2, ASPECTREMAP, DATA)
The slope grid was also reclassed using an ASCII remap table (SLOPEREMAP, Table 1). The remap table produced four slope categories with assigned values of 10, 20, 30 and 40.
- GRID: HVSLOPE3 = RECLASS(HVSLOPE2, SLOPEREMAP, DATA)
Aspect Map Display
A preliminary set of colors, or SHADESET, was developed using the HLS color system for display of the eight-direction reclassification (HVC was not available within ARC/INFO). The SHADESET was produced using the custom menu in SHADEEDIT, ARCPLOT’s symbol editor. Before accessing SHADEEDIT, reduction of screen-color flashing during simultaneous display of dynamic and static colors was accomplished by specifying the allowable numbers of dynamic and static colors as follows:
- ARC: DISPLAY COLORMAP 215 60
- ARC: ARCPLOT
- ARCPLOT: SHADEEDIT
Once the preliminary SHADESET was developed (HLS.SHD), the aspect map was displayed:
- ARCPLOT: SHADESET HLS.SHD
- ARCPLOT: GRIDSHADES HVASPECT3 VALUE NOWRAP
Combination of Aspect and Slope Maps
Values of the slope and aspect grids were added to generate a new grid with cell values that contained their summation:
- GRID: HVPLUS1 = HVSLOPE3 + HVASPECT3
The addition produced unique cell values for all pairings of the four slope categories with the eight aspect categories. An additional reclassification set all aspects in the lowest slope category to the same value (19) as the flat areas (PLUSREMAP, Table 1).
- GRID: HVPLUS2 = RECLASS(HVPLUS1, PLUSREMAP, DATA)
An additional ASCII remap table (25COLORREMAP, Table 1) was used to convert these new values to numbers equaling the SHADESET symbol designations (1 to 25).
Table 1
ASCII files used for reclassifications and color assignments.
ASPECTREMAP
- lowest-output 1
- 0 22 : 1
- 22 67 : 2
- 67 112 : 3
- 112 157 : 4
- 157 202 : 5
- 202 247 : 6
- 247 292 : 7
- 292 337 : 8
- 337 359 : 1
SLOPEREMAP
- lowest-output 10
- 0 5 : 10
- 5 20 : 20
- 20 40 : 30
- 40 220 : 40
PLUSREMAP
- lowest-output 19
- 0 19 : 19
25COLORREMAP
- 19 : 1
- 21 : 2
- 22 : 3
- 23 : 4
- 24 : 5
- 25 : 6
- 26 : 7
- 27 : 8
- 28 : 9
- 31 : 10
- 32 : 11
- 33 : 12
- 34 : 13
- 35 : 14
- 36 : 15
- 37 : 16
- 38 : 17
- 41 : 18
- 42 : 19
- 43 : 20
- 44 : 21
- 45 : 22
- 46 : 23
- 47 : 24
- 48 : 25
RGBTABLE
- 19 153 153 153
- 21 147 166 89
- 22 102 153 102
- 23 102 153 136
- 24 89 89 166
- 25 128 108 147
- 26 166 89 89
- 27 166 134 89
- 28 166 166 89
- 31 172 217 38
- 32 77 179 77
- 33 73 182 146
- 34 51 51 204
- 35 128 89 166
- 36 217 38 38
- 37 217 142 38
- 38 217 217 38
- 41 191 255 0
- 42 51 204 51
- 43 51 204 153
- 44 26 26 230
- 45 128 51 204
- 46 255 0 0
- 47 255 149 0
- 48 255 255 0
RGBTABLE lists preliminary colors in use before the map was exported to the Macintosh environment for color-scheme work in HVC (see Appendix for final color specifications).
SHADEEDIT was used to specify colors from HLS for each of the 25 values (25COLORS.SHD). Display of the combined slope and aspect grids, using the new remap table and new SHADESET, was performed with the following commands:
- GRID: AP SHADESET 25COLORS.SHD
- GRID: GRIDSHADES HVPLUS2 VALUE 25COLORREMAP NOWRAP
ARC’s GRIDIMAGE command was used to convert the gridded data to a TIF file format that was exported to other graphics environments. GRIDIMAGE, however, required a color-map table rather than a SHADESET (it did not accept HLS color specifications). Thus, an ASCII table (RGBTABLE, Table 1) of red-green-blue equivalents to the HLS specifications was created to produce TIF output (the RGB values were recorded earlier using on-screen translation of HLS values within SHADEEDIT).
- ARC: GRIDIMAGE HVPLUS2 RGBTABLE HVPLUS2.TIF TIFF NONE
The TIF file was moved from the Sun to a Macintosh environment using network file transfer protocol (FTP). It was then opened in Adobe PhotoShop and final color manipulation with HVC and graphic editing were performed.
SUMMARY
Systematic variations in all of the perceptual dimensions of color were used for the aspect/slope color scheme discussed in this paper. Eight aspect categories were mapped with an orderly progression of colors around the hue circle. Three slope categories were mapped with differences in saturation, and near-flat slopes were mapped with gray for all aspects. Lightness sequences were built into both the aspect and slope progressions to produce systematic perceptual progressions of color throughout the scheme (among all 25 map categories). These lightness sequences approximated relief shading and were crucial for visualization of the shape of a continuous terrain surface. Use of the HVC color system allowed easy specification of 25 colors that accurately met these interlinked color-appearance criteria. Our aspect/slope color scheme allows accurate terrain visualization while simultaneously categorizing the surface into explicit aspect and slope classes represented within a single, two-dimensional, planimetric map.
REFERENCES
Chang, K., and B. Tsai, 1991, The Effect of DEM Resolution on Slope and Aspect Mapping, Cartography and Geographic Information Systems, 18(1):69-77.
GIS World, 1991, MKS-ASPECT Enhances Color Surface Renderings, GIS World, 4(October):30-32.
Moellering, H., and A.J. Kimerling, 1990, A New Digital Slope-Aspect Display Process, Cartography and Geographic Information Systems, 17(2):151-159.
Taylor, J., A. Tabayoyon, and J. Rowell, 1991, Device-Independent Color Matching You Can Buy Now, Information Display, 4&5:20-22, 49.
ACKNOWLEDGEMENTS
The data, software, and hardware used in development of the aspect/slope map scheme were provided by the Steven and Mary Birch Foundation Center for Earth Systems Analysis Research (CESAR) in the Department of Geography at San Diego State University. We appreciate the skill and assistance of Dave McKinsey, the technical manager of CESAR.
APPENDIX
Specifications of final colors for aspect and slope categories. CIE 1931 x,y chromaticity and luminance (Y in cd/m2) were measured with a Minolta Chroma Meter CS-100 from a 19-inch SuperMac monitor calibrated (with a SuperMatch system) to approximate a generic Apple 13″ color monitor with a D65 white point and gamma of 1.4. Please be aware that use of the RGB values will not reproduce the aspect/slope color scheme if your monitor is much different than ours.
aspect color H V C Y x y R G B
Maximum-slope classes (greater than 40 percent slope)
SE P 285 35 51 10.3 .240 .135 108 0 163
S M 325 50 60 19.6 .350 .198 202 0 156
SW R 5 65 63 33.7 .442 .319 255 85 104
W O 45 80 48 53.8 .421 .421 255 171 71
NW Y 85 95 58 81.1 .395 .512 244 250 0
N GY 110 80 56 55.3 .339 .546 132 214 0
NE G 135 65 48 35.2 .252 .486 0 171 68
E B 245 50 46 19.8 .180 .191 0 104 192
Moderate slopes (20 to 40 percent slope)
SE P 285 47 34 17.4 .262 .209 119 71 157
S M 325 57 40 25.1 .332 .240 192 77 156
SW R 5 67 42 34.3 .390 .316 231 111 122
W O 45 77 32 47.3 .377 .384 226 166 108
NW Y 85 87 39 63.7 .359 .445 214 219 94
N G Y 110 77 37 50.6 .319 .451 141 196 88
NE G 145 67 33 37.0 .253 .400 61 171 113
E B 245 57 31 25.7 .221 .238 80 120 182
Low slopes (5 to 20 percent slope)
SE p 285 60 17 27.5 .280 .272 140 117 160
S m 325 65 20 32.6 .311 .282 180 123 161
SW r 5 70 21 37.2 .339 .317 203 139 143
W o 45 75 16 41.8 .328 .348 197 165 138
NW y 85 80 19 49.7 .321 .375 189 191 137
N g y 110 75 19 45.4 .305 .381 152 181 129
NE g 155 70 16 39.4 .270 .348 114 168 144
E b 245 65 15 32.7 .260 .284 124 142 173
Near-flat slopes (0 to 5 percent slope)
none gray 0 72 0 39 .290 .317 161 161 161