Summary
In ArcGIS Pro, the
Add Surface Information tool calculates slope values in percent (percent rise) units. In some instances, it is preferred to obtain the slope values in degrees. This article provides the steps to convert the units of slope from percent to degrees using the Field Calculator in ArcGIS Pro.
Procedure
Note:
This workflow requires the data to be in a projected coordinate system. ArcGIS is unable to convert percentages derived from decimal degree to angular degrees. Refer to How To: Select the correct geographic (datum) transformation when projecting between datums for more information.
- In the feature class attribute table, add a new field with float or double data type. Refer to ArcGIS Pro: Create a field and apply a domain and default value for steps to do this. In this example, the new field name is SlopeDegrees.
- Click the Save button on the Fields tab to save the new field.
- Use the Calculate Field geoprocessing tool to convert the unit of the slope values from percent to degree:
- In the attribute table, click Calculate to open the Calculate Field geoprocessing tool.
- For Field Name, select the new field. In this example, the new field is SlopeDegrees.
- Ensure Expression Type is set to Python 3.
- Type the following expression in the Expression box. Replace <SlopeFieldPercent> with the name of the field containing the slope in percent unit. In this example, the field name is Avg_Slope.
SlopeDegrees = math.degrees(math.atan(<SlopeFieldPercent>/100))
- Click Run to run the tool.
Note:
The conversion works for all other intermediate values except for the conversion of slope percentages from 0% to 0 degrees or 100% to 90 degrees. The calculation is unable to reach a definite conversion for these values.