ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

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

Slice

Available with Spatial Analyst license.

Available with 3D Analyst license.

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

Summary

Slices or reclassifies the range of values of the input cells into zones of equal interval, equal area, or by natural breaks.

Usage

  • Slice works best on data that is normally distributed. When using input raster data that is skewed, the output result may not contain all of the classes that you had expected or specified.

  • When using the EQUAL_AREA method, sometimes not all of the output zones (classes) will have an equal, or even similar, number of cells. This may be an inherent result based on the nature of the input values and the specified number of zones. If the results are deemed undesirable, you can try using a fewer number of zones or applying a statistics transformation (for example, logarithm or square root) to the input dataset.

  • See Analysis environments and Spatial Analyst for additional details on the geoprocessing environments that apply to this tool.

Syntax

Slice(in_raster, number_zones, {slice_type}, {base_output_zone})
ParameterExplanationData Type
in_raster

The input raster to be reclassified.

Raster Layer
number_zones

The number of zones to reclassify the input raster into.

When the slice method is EQUAL_AREA, the output raster will have the defined number of zones, with a similar number of cells in each.

When EQUAL_INTERVAL is used, the output raster will have the defined number of zones, each containing equal value ranges on the output raster.

When NATURAL_BREAKS is used, the output raster will have the defined number of zones, with the number of cells in each determined by the class breaks.

Long
slice_type
(Optional)

The manner in which to slice the values in the input raster.

  • EQUAL_INTERVAL —Determines the range of the input values and divides the range into the specified number of output zones. Each zone on the sliced output raster has the potential of having input cell values that have the same range from the extremes. This is the default.
  • EQUAL_AREA —Specifies that the input values will be divided into the specified number of output zones, with each zone having a similar number of cells. Each zone will represent a similar amount of area.
  • NATURAL_BREAKS —Specifies that the classes will be based on natural groupings inherent in the data. Break points are identified by choosing the class breaks that best group similar values and that maximize the differences between classes. The cell values are divided into classes whose boundaries are set when there are relatively big jumps in the data values.
String
base_output_zone
(Optional)

Defines the lowest zone value on the output raster dataset.

The default value is 1.

Long

Return Value

NameExplanationData Type
out_raster

The output reclassified raster.

The output will always be of integer type.

Raster

Code sample

Slice example 1 (Python window)

Reclassify the input raster into five classes based on natural groupings inherent in the data.

import arcpy
from arcpy import env  
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"

outslice = Slice("elevation", 5, "NATURAL_BREAKS") 
outslice.save("C:/sapyexamples/output/elev_slice")
Slice example 2 (stand-alone script)

Reclassify the input raster into ten classes based on natural groupings inherent in the data.

# Name: Slice_Ex_02.py
# Description: Slices a range of values of the input cells of a raster by
#    zones of equal interval or equal area.
# 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"
numberZones = 10
baseOutputZone = 5

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

# Execute Slice
outSlice = Slice(inRaster, numberZones, "NATURAL_BREAKS", baseOutputZone) 

# Save the output 
outSlice.save("C:/sapyexamples/output/outslice")

Environments

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

Licensing information

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

Related topics

  • An overview of the Reclass toolset
  • Understanding reclassification
  • Grouping values into intervals or by area with Slice

ArcGIS Desktop

  • Home
  • Documentation
  • Support

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

About Esri

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