Available with Spatial Analyst license.
Summary
Changes the sign of the cell values (multiplies by -1) of the input raster on a cell-by-cell basis.
Illustration
Discussion
When using an operator with a raster input the result will be a raster. However, if all inputs are numbers, then the result is a number.
When multiple operators are used in an expression, they are not necessarily executed in left-to-right order. The operator with the highest precedence value will be executed first. For more information on operator precedence, see operator precedence table. You can use parentheses to control the execution order.
If the input is integer, the output will be integer. If the input is floating point, the output will be floating point.
Syntax
- in_raster_or_constant
Operand | Explanation | Data Type |
in_raster_or_constant | The input raster to be negated (multiplied by -1). | Raster Layer | Constant |
Return Value
Name | Explanation | Data Type |
out_raster | The output raster object. The cell values are the input values negated (multiplied by -1). | Raster |
Code Sample
Unary - (Negate) example 1 (Python window)
This sample changes the sign of the values in the input raster.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outNegate = - Raster("degs")
outNegate.save("C:/sapyexamples/output/outneg")
Unary - (Negate) example 2 (stand-alone script)
This sample changes the sign of the values in the input raster.
# Name: Op_Negate_Ex_02.py
# Description: Changes the sign (multiplies by -1) of the cell values
# of the input raster on a cell-by-cell basis
# 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 = Raster("degs")
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute Negate
outNegate = -(inRaster)
# Save the output
outNegate.save("C:/sapyexamples/output/outnegate")