Slope (Spatial Analyst)
Summary
Identifies the slope (gradient, or rate of maximum change in z-value) from each cell of a raster surface.
Illustration
Usage
-
Slope is the rate of maximum change in z-value from each cell.
-
The use of a z-factor is essential for correct slope calculations when the surface z units are expressed in units different from the ground x,y units.
-
The range of values in the output depends on the type of measurement units.
- For degrees, the range of slope values is 0 to 90.
- For percent rise, the range is 0 to essentially infinity. A flat surface is 0 percent, a 45 degree surface is 100 percent, and as the surface becomes more vertical, the percent rise becomes increasingly larger. See how Slope works for a more detailed explanation of the range of output values with this option.
-
If the center cell in the immediate neighborhood (3 x 3 window) is NoData, the output is NoData.
-
If any neighborhood cells are NoData, they are assigned the value of the center cell; then the slope is computed.
Syntax
Parameter | Explanation | Data Type |
in_raster |
The input surface raster. | Raster Layer |
output_measurement (Optional) |
Determines the measurement units (degrees or percentages) of the output slope data.
| String |
z_factor (Optional) | Number of ground x,y units in one surface z unit. The z-factor adjusts the units of measure for the z units when they are different from the x,y units of the input surface. The z-values of the input surface are multiplied by the z-factor when calculating the final output surface. If the x,y units and z units are in the same units of measure, the z-factor is 1. This is the default. If the x,y units and z units are in different units of measure, the z-factor must be set to the appropriate factor, or the results will be incorrect. For example, if your z units are feet and your x,y units are meters, you would use a z-factor of 0.3048 to convert your z units from feet to meters (1 foot = 0.3048 meter). | Double |
Return Value
Name | Explanation | Data Type |
out_raster |
The output slope raster. | Raster |
Code Sample
This example determines the slope values of the input surface raster.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outSlope = Slope("elevation", "DEGREE", 0.3043)
outSlope.save("C:/sapyexamples/output/outslope01")
This example determines the slope values of the input surface raster.
# Name: _Ex_02.py
# Description: Identifies the rate of maximum change
# in z-value from each cell.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inRaster = "elevation"
outMeasurement = "DEGREE"
zFactor = 0.3043
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute Slope
outSlope = Slope(inRaster, outMeasurement, zFactor)
# Save the output
outSlope.save("C:/sapyexamples/output/outslope02")