MapCalc

MapCalc Cross-Reference:  Analysis Operations for ArcGIS GRID/Spatial Analyst and ERDAS Imagine

 

Map Analysis

 Understanding Spatial

 Patterns and Relationships

(Berry, 2007 GeoTec Media)

 

MapCalc Organization and Cross-Reference of Analysis Operations for

 

 

   GRID/Spatial Analyst and

  ERDAS Imagine

 

<Click here> for a printer-friendly copy

 

 

Organization of MapCalc Analysis Operations

 

All GIS software contains procedures to encode, store, control, analyze and output maps.  Five fundamental classes organize the map analysis operations in MapCalc to include—

 

·         Reclassifying maps—operations CLUMP, CONFIGURE, RENUMBER, SIZE, and SLICE

·         Overlaying maps—operations COMPOSITE, COMPUTE, CALCULATE, COVER, CROSSTAB and INTERSECT

·         Measuring distance and connectivity—operations DRAIN, RADIATE, SPAN, SPREAD and STREAM

·         Characterizing neighborhoods—operations INTERPOLATE, ORIENT, PROFILE, SCAN and SLOPE

·         Statistical relationships—operations ANALYZE, CLUSTER, COMPARE, CORRELATE, REGRESS and RELATE.

 

This organizational scheme is based on the user's perspective of map input and output contents—what the map(s) look like going in, and coming out. 

 

RECLASSIFYING operations assign new values to each map category on an existing map layer.  Regardless whether you RENUMBER, SLICE, SIZE, CLUMP or CONFIGURE, the resulting map will have the same "boundaries" (spatial arrangement) as the input map.  The new values might be ones you directly assigned (RENUMBER), or the ones the computer automatically assigns (SLICE), or ones based on the area of each category (SIZE), or ones indicating the shape of the individual features (CONFIGURE).  If the same value is assigned to two adjacent categories, the boundary disappears.  In CLUMP, if a feature is composed of several discrete groupings, each will each get a different value and the individual boundaries will be distinct.  However, in all RECLASSIFYING operations, the similarities in the spatial arrangement of features on the input and output maps are readily apparent—just a different set numbers. 

 

OVERLAYING operations are radically different as they assign new values based on the independent values on two or more maps.  Commands COMPUTE/CALCULATE (with map variables), COVER and INTERSECT overlay maps on a "point-by-point" (cell-by-cell) basis.  In each instance, an entirely different looking map is generated as output.  "Region-wide" overlay, on the other hand, results in a map with similar spatial arrangement of features as those on the "template" map.  The map categories on the template map identify the locations (cells) whose values from the "data map" are summarized.  For example, the command “COMPOSITE Districts_map With Slope_map Average For Avg_Slope” creates a map of the average slope for each district.  The result is a map with the same spatial arrangement of features—just new values.  The effect is similar to a RECLASSIFY, but two input maps are required.

 

DISTANCE MEASUREMENT operations assign values as a function of simple or weighted connections among locations.  In each instance, a map of "starter" locations is converted into a map characterizing their connectivity to their surroundings.  The connections can be "simple," or "weighted" by intervening conditions.  The SPREAD (proximity), and SPAN (narrowness) commands identify the inter- and intra-distance of features.  The RADIATE command identifies if locations can be seen from the starter locations.  The STREAM and DRAIN commands identify the actual path(s) of the connections from starter locations. 

 

NEIGHBORHOOD operations assign values that summarize conditions within the vicinity of map locations (i.e., "roving window").  In the case of SLOPE, ORIENT and PROFILE commands, the summary implies a characteristic of a surface, or gradient map.  In the case of INTERPOLATE or SCAN, the summary is a mathematical or statistical summary of the values within the neighborhood.

 

STATISTICAL operations assign values as a function of the statistical relationships among maps.  In the case of ANALYZE descriptive statistics are reported for a stack of map layers.  In the case of CORRELATE and REGRESS the spatial relationship among maps is reported in tabular and equation form. CLUSTER and RELATE generate a new map that shows the similarity among and within maps, respectively.  COMPARE produces maps and tabular comparisons between maps.

 

 (return to top)

 

Cross-Reference to GRID/SA Operations (by ESRI)

 

GRID is a raster geo-processing toolbox that was integrated with the ARC/INFO vector GIS system in the late 1980s.  Spatial Analyst is a derivative of GRID and is distributed as an extension to the ArcView and ArcGIS systems.  The following listing is a cross-reference of MapCalc and GRID/SA operations organized by the five analytical classes described above.  The analytical operations in GRID are grouped into 24 functional classes that are indicated in the body of the listing (e.g., Shape Analysis function, Hydrologic function, etc.).  Encoding, storage, control and output operations are excluded from this cross-reference.

 

RECLASSIFY OPERATIONS:  New values are assigned as a function of the initial value, size, shape, or contiguity of each map category on a map.

 

·         CLUMP -- MapCalc operation that assigns new values to contiguous groups of cells within each map category.  Related GRID commands are

Shape Analysis function REGIONGROUP

Hydrologic functions STREAMLINK,STREAMORDER

 

·         COMPUTE (one map) -- MapCalc operation that assigns new values to each map location as the mathematical or statistical function of the existing value.  Related GRID commands are

Arithmetic operator UNARY-

Boolean operator ^

Bitwise operators <<,>>,^^

Assignment operator =

Trigometric operators ACOS, ACOSH, ASIN, ASINH, ATAN, ATAN2, ATANH, COS, COSH, SIN, SINH, TAN, TANH

Expodential and Logarithmic operators EXP, EXP10,EXP2, LN, LOG10, LOG2, POW, SQR, SQRT

Selection functions SELECT, TEST

Statistical functions EQUALTO, GREATERTHAN, LESSTHAN, LPOS, UPOS

Other functions ABS, CEIL, CON, FLOAT, FLOOR, INT, INSUL, MERGE, PICK, NORMAL, RAND, SCALAR, SETNULL

 

·         CONFIGURE -- MapCalc operation that assigns new values characterizing the shape of the area associated with each category.  Related GRID commands are

None, but shape statistics can be derived from ARC/INFO tables through user defined scripts

 

·         RENUMBER -- MapCalc operation that assigns new values to the categories on a map.  Related GRID commands are

Reclassification function RECLASS

    

·         SIZE -- MapCalc operation that assigns new values according to the size of the area associated with each map category.  Related GRID commands are

Zonal functions ZONALAREA,ZONALPERIMETER,ZONALTHICKNESS

 

·         SLICE -- MapCalc operation that assigns new values by dividing the range of values on a map into specified intervals (contouring).  Related GRID commands are

Reclassification function SLICE

 

OVERLAY OPERATIONS:  New values are assigned as a function of the independent values associated with each map location or categories on two or more existing maps.

 

·         COMPOSITE -- MapCalc operation that creates a map summarizing values from one map that coincide with the categories of another.  Related GRID commands are

Zonal functions ZONALFILL, ZONALMAX, ZONALMEAN,  ZONALMIN, ZONALRANGE, ZONALSTD, ZONALSUM, ZONALVARIETY

          

·         COMPUTE (two or more maps) -- MapCalc operation that creates a map as the mathematical or statistical function of two or more maps.  Related GRID commands are

Arithmetic operators *, +, -, DIV, MOD

Boolean operators !, &, |

Relational operators <, <=, ==, >, >=, ^=

Bitwise operators !!, &&, ||

Combinatorial operators CAND, COR, CXOR

Logical operators DIFF, IN, OVER

Statistical functions MAJORITY, MAX, MED, MIN, MINORITY, RANK, REGRESSION, VARIETY

Other function FMOD

 

·         COVER -- MapCalc operation that creates a new map where non-zero values of the top map replace the values on the previous (bottom) map, or stack of maps.  Related GRID commands are

Selection functions SELECTBOX, SELECTCIRCLE, SELECTMASK, SELECTPOINT, SELECTPOLYGON

 

·         INTERSECT -- MapCalc operation that creates a map by assigning new values to pair wise combinations of the values on two maps.  Related GRID commands are

Combinatorial function COMBINE

 

DISTANCE OPERATIONS:  New values are assigned as a function of the simple or effective distance, optimal movement, narrowness, or visual connectivity among map locations.

 

·         DRAIN -- MapCalc operation that creates a map indicating the number of steepest paths (optimal path density) from a set of locations along a surface.  Related GRID commands are

Hydrologic function FLOWACCUMULATION

 

·         RADIATE -- MapCalc operation that creates a map indicating areas that are visible from specified locations.  Related GRID commands are

Visibility tools VISENCODE, VISIBILITY

 

·         SPAN -- MapCalc operation that creates a map indicating the narrowness within areas associated with each category of a map.  Related GRID commands are

None

 

·         SPREAD -- MapCalc operation that creates a map indicating the shortest effective distance from specified cells to all other locations.  Related GRID commands are

Distance functions CORRIDOR (compute sum), COSTALLOCATION (slice), COSTDISTANCE, EUCALLOCATION, EUDIRECTION (orient), EUCDISTANCE

Shape Analysis functions EXPAND, SHRINK

Hydrologic function WATERSHED, BASIN

 

·         STREAM -- MapCalc operation that creates a map identifying the steepest downhill route along a surface (optimal path).  Related GRID commands are

Distance functions COSTBACKLINK, COSTPATH, PATHDISTANCE

Hydrologic function FLOWDIRECTION (orient)

 

NEIGHBORHOOD OPERATIONS:  New values are assigned as a function of the independent values within a specified distance and direction around each map location.

 

·         INTERPOLATE -- MapCalc operation that creates a continuous surface from point data.  Related GRID commands are

Surface functions IDW, KRIGING, SPLINE, TREND

 

·         ORIENT -- MapCalc operation that creates a map indicating aspect along a continuous surface.  Related GRID commands are

Surface function ASPECT

Distance function EUCDIRECTION

 

·         PROFILE -- MapCalc operation that creates a map indicating the cross-sectional profile along a continuous surface.  Related GRID commands are

Surface functions SAI, SHADE

 

·         SCAN -- MapCalc operation that creates a map summarizing the values that occur within the vicinity of each cell.  Related GRID commands are

Conditional statement IF, WHILE, DOCELL summaries within a DOCELL block using Accumulative operators *=, +=, -=, /=, {=, }= and/or Assignment operator :=

Statistical operation POPULARITY

Focal functions FOCALFLOW, FOCALMAX, FOCALMEAN, FOCALMIN, FOCALRANGE,  FOCALSTD, FOCALSUM, FOCALVARIETY

Data Clean-up functions BOUNDARYCLEAN, MAJORITYFILTER, NIBBLE, THIN

Hydrologic functions FILL, SINK

 

·         SLOPE -- MapCalc operation that creates a map indicating the slope (1st derivative) along a continuous surface.  Related GRID commands are

Surface function SLOPE

 

STATISTICAL OPERATIONS:  New values and statistical summaries are assigned as a function of the numerical relationships among maps. 

 

·         ANALYZE -- MapCalc operation that creates a map of the simple or weighted average, standard deviation, coefficient of variation and several other descriptive statistics for two or more maps (map stack).  Related GRID commands are

STACKSTATS

MEAN (simple average only), MIN, MAX, MED, VARIETY, MAJORITY, MINORITY, RANGE

 

·         CLUSTER -- MapCalc operation that creates a map that identifies areas with similar data patterns (characteristics) using a stack of input map layers.  Related GRID commands are

ISOCLUSTER

MLCLASSIFY (maximum-likelihood classification)

 

·         COMPARE -- MapCalc operation that generates a summary table of various comparison statistics between two maps.  Related GRID commands are

DIFF (determines which values are logically different)

Comparative statistics can be derived by evaluating index equations using GRIDMATH

 

·         CORRELATE -- MapCalc operation that generates a correlation matrix from a stack of maps.  Related GRID commands are

CORRELATION for a single pair of map layers

 

·         REGRESS -- MapCalc operation performs a linear regression analysis by using the "least squares" method to fit a line through a set of data points in multiple maps (map stack) and outputs the regression coefficients of the prediction model.  Related GRID commands are

REGRESSION (Linear | Logistic)

 

·         RELATE -- MapCalc operation that creates a map that quantifies the similarity of each location on a map to an evaluation data pattern, or set of comparison values.  Related GRID commands are

None

 

 

(return to top)

 

 

Cross-Reference to ERDAS Imagine Operations (by ERDAS/Leica)

 

Imagine is a powerful image mapping and visualization package with a robust set of grid-based map analysis tools.  Its historical roots are in remote sensing and image processing and has particularly well-developed statistical operations. 

 

RECLASSIFY OPERATIONS:  New values are assigned as a function of the initial value, size, shape, or contiguity of each map category on a map.

 

·         CLUMP -- MapCalc operation that assigns new values to contiguous groups of cells within each map category.  Related ERDAS commands are

CLUMP

SIEVE- deletes clumps smaller than user specified

ELIMINATE- similar to Sieve but dissolves smaller clumps into neighbors.

 

·         COMPUTE (one map) -- MapCalc operation that assigns new values to each map location as the mathematical or statistical function of the existing value.  Related ERDAS commands are

RECODE 

            Trigometric operators: ACOS, ASIN, ATAN, COS, SIN, TAN

Expodential and Logarithmic operators: LOG, LN, SQRT

Other functions: Row, pi, modabs, int, even, odd, max, min, convert units, format string/number, lowercase, uppercase

SINGLE INPUT ‘FUNCTIONS’

Trigometric operators: ACOS, ACOSH, ASIN, ASINH, ATAN, COS, COSH, SIN, SINC, SINH, TAN, TANH

Expodential and Logarithmic operators: EXP, LOG, LOG10, SQRT

Other functions: ABS, ANGLE, BINARY, CEIL, CONJ, DELTA, EVEN, GAMMA, IMAG, INV, ODD, REAL, RECT, ROUND, SIGN, STEP, TRI, TRUNC, WHOLE

           

·         CONFIGURE -- MapCalc operation that assigns new values characterizing the shape of the area associated with each category.  Related ERDAS commands are

PERIMETER

 

·         RENUMBER -- MapCalc operation that assigns new values to the categories on a map.  Related ERDAS commands are

RECODE 

            Trigometric operators: ACOS, ASIN, ATAN, COS, SIN, TAN

Expodential and Logarithmic operators: LOG, LN, SQRT

Other functions: Row, pi, modabs, int, even, odd, max, min, convert units, format string/number, lowercase, uppercase

SINGLE INPUT ‘FUNCTIONS’

Trigometric operators: ACOS, ACOSH, ASIN, ASINH, ATAN, COS, COSH, SIN, SINC, SINH, TAN, TANH

Expodential and Logarithmic operators: EXP, LOG, LOG10, SQRT

Other functions: ABS, ANGLE, BINARY, CEIL, CONJ, DELTA, EVEN, GAMMA, IMAG, INV, ODD, REAL, RECT, ROUND, SIGN, STEP, TRI, TRUNC, WHOLE

    

·         SIZE -- MapCalc operation that assigns new values according to the size of the area associated with each map category.  Related ERDAS commands are

Size of each value is always present in ‘Histogram’ column of every image (mandatory)

            CLUMP (reports clump pixel size)

 

·         SLICE -- MapCalc operation that assigns new values by dividing the range of values on a map into specified intervals (contouring).  Related ERDAS commands are

TOPOGRAPHIC LEVEL SLICE (refers to DEM, but any raster is fine)

 

 

OVERLAY OPERATIONS:  New values are assigned as a function of the independent values associated with each map location or categories on two or more existing maps.

 

·         COMPOSITE -- MapCalc operation that creates a map summarizing values from one map that coincide with the categories of another.  Related ERDAS commands are

ZONAL ATTRIBUTES (Raster summary of Vector regions, must have template in Vector)

         

·         COMPUTE (two or more maps) -- MapCalc operation that creates a map as the mathematical or statistical function of two or more maps.  Related ERDAS commands are

TWO INPUT ‘OPERATORS’

Add, subtract, Multiplication, Division, Power and MOD

INDEX

 

·         COVER -- MapCalc operation that creates a new map where non-zero values of the top map replace the values on the previous (bottom) map, or stack of maps.  Related ERDAS commands are

OVERLAY (you specify if min or max value of each cell in the two layers takes priority)      

Combined with Recode command allows same functionality with several steps i.e. masking data

 

·         INTERSECT -- MapCalc operation that creates a map by assigning new values to pair wise combinations of the values on two maps.  Related ERDAS commands are

MATRIX

 

DISTANCE OPERATIONS:  New values are assigned as a function of the simple or effective distance, optimal movement, narrowness, or visual connectivity among map locations.

 

·         DRAIN -- MapCalc operation that creates a map indicating the number of steepest paths (optimal path density) from a set of locations along a surface.  Related ERDAS commands are

None

 

·         RADIATE -- MapCalc operation that creates a map indicating areas that are visible from specified locations.  Related ERDAS commands are

Viewshed Analysis

 

·         SPAN -- MapCalc operation that creates a map indicating the narrowness within areas associated with each category of a map.  Related ERDAS commands are

None

 

·         SPREAD -- MapCalc operation that creates a map indicating the shortest effective distance from specified cells to all other locations.  Related ERDAS commands are

SEARCH  (Euclidean distance only)

 

·         STREAM -- MapCalc operation that creates a map identifying the steepest downhill route along a surface (optimal path).  Related ERDAS commands are

None

 

NEIGHBORHOOD OPERATIONS:  New values are assigned as a function of the of the independent values within a specified distance and direction around each map location.

 

·         INTERPOLATE -- MapCalc operation that creates a continuous surface from point data.  Related ERDAS commands are

3-D Surfacing

 

·         ORIENT -- MapCalc operation that creates a map indicating aspect along a continuous surface.  Related ERDAS commands are

ASPECT

 

·         PROFILE -- MapCalc operation that creates a map indicating the cross-sectional profile along a continuous surface.  Related ERDAS commands are

None but might be possible using Spatial Modeler

 

·         SCAN -- MapCalc operation that creates a map summarizing the values that occur within the vicinity of each cell.  Related ERDAS commands are

NEIGHBORHOOD: Sum, Diversity, Density, Majority, Minority, Max, Min, Rank

 

·         SLOPE -- MapCalc operation that creates a map indicating the slope (1st derivative) along a continuous surface.  Related ERDAS commands are

SLOPE

 

STATISTICAL OPERATIONS:  New values and statistical summaries are assigned as a function of the numerical relationships among maps. 

 

·         ANALYZE -- MapCalc operation that creates a map of the simple or weighted average, standard deviation, coefficient of variation and other descriptive statistics for two or more maps (map stack).  Related ERDAS commands are

Modeler Functions: STATISTICAL (not available via a ‘button’)

 

·         CLUSTER -- MapCalc operation that creates a map that identifies areas with similar data patterns (characteristics) using a stack of input map layers.  Related ERDAS commands are

CLASSIFIERà Unsupervised (ISODATA)

 

·         COMPARE -- MapCalc operation that generates a summary table of various comparison statistics between two maps.  Related ERDAS commands are

Modeler Functions: CONDITIOAL (compare using conditional statements; not available via a ‘button’)

 

·         CORRELATE -- MapCalc operation that generates a correlation matrix from a stack of maps.  Related ERDAS commands are

Modeler Functions: ANALYSISà Correlation

 

·         REGRESS -- MapCalc operation performs a linear regression analysis by using the "least squares" method to fit a line through a set of data points in multiple maps (map stack) and outputs the regression coefficients of the prediction model.  Related ERDAS commands are

None

 

·         RELATE -- MapCalc operation that creates a map that quantifies the similarity of each location on a map to an evaluation data pattern, or set of comparison values.  Related ERDAS commands are

None

 

 

 (return to top)