Bivariate, Monochrome Symbolization
For area symbolization, the visual variables of texture, orientation and value can be combined to represent to variables. This set of macros is designed for continuous and abruptly changing spatial data of nominal to ratio attribute levels.
Two Nominal Data Sets--Texture and Orientation
Figure 5.3a: CTO.aml Nominal data displayed with texture and a second nominal data set displayed with orientation.
Texture is best for showing nominal data. With the default ARC/INFO shadeset, texture involves the selection of polygon shade patterns such as 5, 9 and 13. A more flexible approach to texture involves using the SHADETYPE and SHADESEPARATION commands. In this method the SHADETYPE must be set to type HATCH, first. Then the shadesize should be set; because of the dithering necessary to create gray shades on paper maps, the shadesize should be set to at least 0.02 inches. The SHADESEPARATION value is then varied to change the texture of the area fill. Because the general ARCPLOT commands require an integer in the SYMBOL column of a lookup table and this how the lookup table generation AMLs are set up, the AML, CTO.aml, scales each of the texture values by dividing by 100. SHADEANGLE is used to control the drawing angle of each shade; the SYMBOL values in the angle lookup table should be values from 0 to 180 degrees. See Figure 5.3a.
CTO <texture_lookup>
<orientation_lookup> {line_size}
<texture_lookup>- specifies line separation in hundredths of PAGEUNITS
<orientation_lookup>- specifies drawing angles
{line_size}- specifies the width of the fill lines--defaults to 0 (minimum displayable width).
Nominal Data, and Ordinal Data--Texture Distinguished by Value
Figure 5.3b: CTV.aml Nominal data displayed with texture and ordinal data displayed with value. This can be used to display a data set with its meta-data.
This AML makes use of two lookup tables to display texture and value; the first lookup table's symbol column should contain values for line separation, which will be divided by 100, and the second lookup table's symbol column should contain values for value (0 to 80). This method should be used when presenting data with meta-data, rather than texture, and orientation or hue, which are intended to show spatial correlation. See Figure 5.3b and CTV.aml.
CTV <texture_lookup> <value_lookup>
{line_size} {angle} {hue} {intensity}
<texture_lookup>- specifies line separation in hundredths of PAGEUNITS
<value_lookup>- specifies HLS lightness
{line_size}- specifies fill line width--defaults to 0.03 inches
{angle}- specifies a drawing angle--defaults to horizontal
{hue} {intensity}- specify a color to be value shaded.
Nominal Data-1 and 2--Texture as Intersecting Lines
Figure 5.4a: CTL.aml Two nominal data sets displayed with texture. This AMl can also be used to display ordinal data.
Figure 5.4b: CBL.aml A legend for figure 5.4a. The shape of the boxes formed by the intersecting lines designates the values shown.
One method of bivariate mapping that has been studied (by Carstensen) for communication of two correlated variables is intersecting lines. This involves use of texture as a visual variable by the controlled mixing of horizontal and vertical lines. This AML uses the SYMBOL value in both of the lookup tables to determine the texture of the vertical (the first lookup table) and horizontal (the second lookup table) lines; see Figure 5.4a and CTL.aml (the legend AML is presented in the Bivariate, Color Symbolization section).
CTL <vertical_lookup>
<horizontal_lookup> {line_size}
<vertical_lookup>- specifies line separation in hundredths of PAGEUNITS for vertical lines
<horizontal_lookup>- specifies line separation for horizontal lines
{line_size}- specifies line width--defaults to 0 (minimum displayable width).
Two Ordinal to Ratio Data Sets--Texture as Intersecting Lines
Figure 5.4c: CIL.aml This intersecting lines map is an unclassed representation of two ratio data sets.
A variation of the previous AML allows the display of unclassed, ratio data. This AML (CIL.aml) makes use of the values in two columns of the Polygon Attribute Table to determine the spacing of the vertical and horizontal lines; see Figure 5.4c.
CIL <cover> <vertical_texture_item>
<horizontal_texture_item> {maximum_separation}
{minimum_separation} {separation_scale}
{line_size}
<cover>- the polygon coverage to be displayed
<vertical_texture_item>- a numeric data item in <cover> for vertical line spacing
<horizontal_texture_item>- a numeric data item in <cover> for horizontal line spacing
{maximum_separation}- the maximum width between lines--defaults to 0.3 inches
{minimum_separation}- the minimum width between lines--defaults to 0.05 inches
{separation_scale}- a real number to control exponential scaling of data
to separation,
the default is 1--linear scaling {line_size}- specifies a fill line width--defaults to 0 (minimum displayable width).
Bivariate Legends--Unclassed Texture
Figure 5.4d: CILL.aml A legend for figure 5.4c. As with the classed map in figure 5.4a, the shape of the boxes desgnates the values represented.
Because the previous AML uses Polygon Attribute Table to determine polygon texture, the AML that generates bivariate legends with lookup tables will not work. This AML only creates an unclassed texture legend, specifically for the maps generated with the previous AML. See Figure 5.4d and CILL.aml.
CILL <cover> <vertical_item>
<horizontal_item> <start_x> <start_y>
<size_x> <size_y>
{maximum_separation} {minimum_separation}
{separation_scale} {line_size}
{textset} {font} {point_size}
{floating_point_precision}
<cover>- the polygon coverage displayed with CIL.aml
<vertical_texture_item>- a numeric data item in <cover> for vertical line spacing
<horizontal_texture_item>- a numeric data item in <cover> for horizontal line spacing
<start_x> <start_y>- the lower left corner of the legend's location
<size_x> <size_y>- the size of the legend diagram
{maximum_separation}- the maximum width between lines--defaults to 0.3 inches
{minimum_separation}- the minimum width between lines--defaults to 0.05 inches
{separation_scale}- a real number to control exponential scaling of data
to separation,
the default is 1--linear scaling {line_size}- specifies a fill line width--defaults to 0 (minimum displayable width)
{textset} {font} {point_size}- define the labeling text--defaults to a 10 point roman font
{floating_point_precision}- the number of decimal places to be shown--the default is 2.