Slope

Function Description: Identifies the slope (gradient or steepness) of each cell in the raster.

How It Works

The Slope tool identifies the steepness at each cell of a raster surface. The lower the slope value, the flatter the terrain; the higher the slope value, the steeper the terrain.

The output slope raster can be calculated in two types of units, degrees or percent (percent rise). The percent rise can be better understood if you consider it as the rise divided by the run, multiplied by 100. Consider triangle B below. When the angle is 45 degrees, the rise is equal to the run, and the percent rise is 100 percent. As the slope angle approaches vertical (90 degrees), as in triangle C, the percent rise begins to approach infinity.

Picture

Comparing values for slope in degrees versus percent.

The Slope tool is most frequently run on an elevation dataset as the following images show. Steeper slopes are shaded darker brown on the output slope raster.

Picture

Inputs and Outputs

Slope Algorithm

The slope is computed as the rate of change (delta) of the surface in the horizontal (dz/dx) and vertical (dz/dy) directions from the center cell to each adjacent cell. The basic algorithm used to calculate the slope is as follows:

slope_radians = ATAN ( √ ([dz/dx]2 + [dz/dy]2) )

Slope is commonly measured in units of degrees, which uses the following algorithm:

slope_degrees = ATAN ( √ ([dz/dx]2 + [dz/dy]2) ) * 57.29578

Note: The value 57.29578 shown here is a truncated version of the result from 180/pi.

The slope algorithm can also be interpreted as follows:

slope_degrees = ATAN (rise_run) * 57.29578

where:

rise_run = √ ([dz/dx]2 + [dz/dy]2]

The values of the center cell and its eight neighbors determine the horizontal and vertical deltas. The neighbors are identified as letters from a to i, with e representing the cell for which the slope is being calculated.

The rate of change in the x direction for cell e is calculated with the following algorithm:

[dz/dx] = ((c + 2f + i)*4/wght1 - (a + 2d + g)*4/wght2) / (8 * x_cellsize)
  • where:

    wght1 and wght2 are the horizontal weighted counts of valid cells.

    For instance, if:

    • c, f, and i all have valid values, wght1 = (1+2*1+1) = 4.
    • i is NoData, wght1 = (1+2*1+0) = 3.
    • f is NoData, wght1 = (1+2*0+1) = 2.

    Similar logic applies to wght2, except the neighbor locations are a, d, and g.

[dz/dy] = ((g + 2h + i)*4/wght3 - (a + 2b + c)*4/wght4) / (8 * y_cellsize)
  • where:

    wght3 and wght4 are the same concept as in the [dz/dx] computation.

calculation example

As an example, the slope value of the center cell of the moving window shown below will be calculated.

Picture

Slope example input

The rate of change in the x direction for the center cell e is:

[dz/dx] = ((c + 2f + i)*4/wght1 - (a + 2d + g)*4/wght2) / (8 * x_cellsize) 
        = ((50 + 60 + 10)*4/(1+2+1) - (50 + 60 + 8)*4/(1+2+1)) / (8 * 5)
        = (120 - 118) / 40 
        = 0.05

The rate of change in the y direction for cell e is:

[dz/dy] = ((g + 2h + i)*4/wght3 - (a + 2b + c)*4/wght4) / (8 * y_cellsize) 
        = ((8 + 20 + 10)*4/(1+2+1) - (50 + 90 + 50)*4/(1+2+1)) / (8 * 5) 
        = (38 - 190 ) / 40
        = -3.8

Taking the rate of change in the x and y direction, the slope for the center cell e is calculated using the following:

rise_run = √ ([dz/dx]2 + [dz/dy]2) 
         = √ ((0.05)2 + (-3.8)2)
         = √ (0.0025 + 14.44)
         = 3.80032
slope_degrees = ATAN (rise_run) * 57.29578
              = ATAN (3.80032) * 57.29578
              = 1.31349 * 57.29578
              = 75.25762

The integer slope value for cell e is 75 degrees.

Data Description

Input and Output Relationship

Picture

Slope Calculation Input and Output Relationship

  • This tool processes the data using a moving 3x3 cell window. If the processing cell is NoData, the output for that location will also be NoData.

  • The tool also requires that at least 7 of the 8 neighboring cells adjacent to the processing cell have valid values. If fewer than 7 valid cells are present, the calculation is not performed, and the output for that processing cell will be NoData.

  • The cells in the outermost rows and columns of the output raster will be NoData. This is because these cells do not have enough valid neighboring cells along the boundary of the input dataset.

  • The range of output values depends on the type of measurement units:

    • If in degrees, the slope values range from 0 to 90.
    • If in percentage increment, the range is from 0 to infinity. A flat surface is 0%, a 45-degree surface is 100%, and the increment percentage increases as the surface becomes closer to vertical.
  • If the surface (vertical) z units are expressed in units different from the ground x, y units, the Z factor must be applied to correct the slope calculation.

Steps

  1. Go to Toolbox -> Raster Tools -> Surface Analysis -> Slope tool, and double-click to open the tool dialog.
Picture

Slope

Parameter Description:

  • Input Raster: The input surface raster.
  • Output Measurement: Determines the measurement units for the output slope data (degrees or percentage).
    • Degrees — The slope angle will be calculated in degrees.
    • Percent rise — The slope angle will be calculated in percentage increment, also known as percentage slope.
  • Z Factor: The number of ground units (x, y) per surface z unit. When the z units and the x, y units of the input surface are different, the Z factor adjusts the measurement units of the z values. The Z factor is multiplied by the z values of the input surface during the calculation. If the x, y units and z units use the same measurement units, the Z factor is 1 (default setting). If they use different units, the Z factor must be set to the appropriate value to avoid errors. For example, if the z units are in feet and the x, y units are in meters, use a Z factor of 0.3048 to convert feet to meters (1 foot = 0.3048 meters).
  • Output path: The output slope raster. This raster is of floating-point type.
  • Add Result to Project: If checked, a layer for the result data will be automatically created and added to the project.

results matching ""

    No results matching ""