ArcGIS Desktop

  • Documentation
  • Support

  • My Profile
  • Help
  • Sign Out
ArcGIS Desktop

ArcGIS Online

The mapping platform for your organization

ArcGIS Desktop

A complete professional GIS

ArcGIS Enterprise

GIS in your enterprise

ArcGIS for Developers

Tools to build location-aware apps

ArcGIS Solutions

Free template maps and apps for your industry

ArcGIS Marketplace

Get apps and data for your organization

  • Documentation
  • Support
Esri
  • Sign In
user
  • My Profile
  • Sign Out

ArcMap

  • Home
  • Get Started
  • Map
  • Analyze
  • Manage Data
  • Tools
  • Extensions

Slope

Available with 3D Analyst license.

  • Summary
  • Illustration
  • Usage
  • Syntax
  • Code sample
  • Environments
  • Licensing information

Summary

Identifies the slope (gradient or steepness) from each cell of a raster.

Learn more about how Slope works

Illustration

Slope illustration
Slope_3d (InRas1, OutRas)

Usage

  • This tool uses a 3 by 3 cell moving window to process the data. If the processing cell is NoData, the output for that location will be NoData.

  • Of the eight cells neighboring the processing cell, this tool requires that at least seven of them have a valid value. If there are fewer than seven valid cells, the calculation will not be performed, and the output at that processing cell will be NoData.

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

  • 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.

  • For the planar method, the use of a z-factor is essential for correct slope calculations when the surface (vertical) z-units are expressed in units different from the ground x,y units. The Z factor parameter will be enabled only when the planar method is selected.

  • For the geodesic method, specifying the surface z-unit is important to ensure the accuracy of the output. The Z unit parameter will be enabled only when the geodesic method is selected.

  • If a z-unit is available in the vertical coordinate system of the input raster, it will be applied automatically. It is suggested that you define a z-unit for the input raster if it is missing. You can use the Define Projection tool to specify a z-unit. If it is undefined, meter will be used by default.

  • When the input raster needs to be resampled, the bilinear technique will be used. An example of when an input raster may be resampled is when the output coordinate system, extent, or cell size is different from that of the input.

  • This tool can be GPU accelerated when calculating geodesic slope, which means that if a GPU device (graphics processing unit) is available on your system, it will be used to enhance the performance of the geodesic method.

    More information on how to configure your GPU device is available in the Spatial Analyst extension help in the GPU processing with Spatial Analyst help topic.

Syntax

Slope_3d (in_raster, out_raster, {output_measurement}, {z_factor}, {method}, {z_unit})
ParameterExplanationData Type
in_raster

The input surface raster.

Raster Layer
out_raster

The output slope raster.

It will be floating-point type.

Raster Dataset
output_measurement
(Optional)

Determines the measurement units (degrees or percentages) of the output slope raster.

  • DEGREE —The inclination of slope will be calculated in degrees.
  • PERCENT_RISE —The inclination of slope will be calculated as percent rise, also referred to as the percent slope.
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
method
(Optional)

Determines whether to calculate the aspect based on a planar (flat earth) or a geodesic (ellipsoid) method.

  • PLANAR —The calculation will be performed on a projected flat plane using a 2D Cartesian coordinate system. This is the default method.
  • GEODESIC —The calculation will be performed in a 3D Cartesian coordinate system by considering the shape of earth as an ellipsoid.

The planar method is appropriate to use on local areas in a projection that maintains correct distance and area. It is suitable for analysis that cover areas such cities, counties, or smaller states in area. The geodesic method produces a more accurate result, at the potential cost of an increase in processing time.

String
z_unit
(Optional)

Linear unit of vertical z-values.

It is defined by a vertical coordinate system if it exists. If a vertical coordinate system does not exist, the z-unit should be defined from the unit list to ensure correct geodesic computation. By default, Meter would be applied.

  • INCH —For inches (U.S.)
  • FOOT —For feet
  • YARD —For yards (U.S.)
  • MILE_US —For miles (U.S.)
  • NAUTICAL_MILE —For nautical miles
  • MILLIMETER —For millimeters
  • CENTIMETER —For centimeters
  • METER —For meters
  • KILOMETER —For kilometers
  • DECIMETER —For decimeters
String

Code sample

Slope example 1 (Python window)

This example determines the slope values of the input surface raster.

import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.Slope_3d("elevation", "C:/output/outslope01", "DEGREE", 0.3043)
Slope example 2 (stand-alone script)

This example determines the slope values of the input surface raster.

# Name: Slope_3d_Ex_02.py
# Description: Identifies the rate of maximum change 
#              in z-value from each cell.
# Requirements: 3D Analyst Extension

# Import system modules
import arcpy
from arcpy import env

# Set environment settings
env.workspace = "C:/data"

# Set local variables
inRaster = "elevation"
outRaster = "C:/output/outslope02"
outMeasurement = "DEGREE"
zFactor = ""
method = "GEODESIC"
zUnit = "FOOT"

# Check out the ArcGIS 3D Analyst extension license
arcpy.CheckOutExtension("3D")

# Execute Slope
arcpy.Slope_3d(inRaster, outRaster, outMeasurement, zFactor, method, zUnit)

Environments

  • Auto Commit
  • Cell Size
  • Current Workspace
  • Extent
  • Geographic Transformations
  • Mask
  • Output CONFIG Keyword
  • Output Coordinate System
  • Scratch Workspace
  • Snap Raster
  • Tile Size

Licensing information

  • ArcGIS Desktop Basic: Requires 3D Analyst or Spatial Analyst
  • ArcGIS Desktop Standard: Requires 3D Analyst or Spatial Analyst
  • ArcGIS Desktop Advanced: Requires 3D Analyst or Spatial Analyst

Related topics

  • An overview of the Raster Surface toolset

ArcGIS Desktop

  • Home
  • Documentation
  • Support

ArcGIS Platform

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

About Esri

  • About Us
  • Careers
  • Insiders Blog
  • User Conference
  • Developer Summit
Esri
Tell us what you think.
Copyright © 2017 Esri. | Privacy | Legal