Skip To Content

Zonal Fill

Available with Spatial Analyst license.

Summary

Fills zones using the minimum cell value from a weight raster along the zone boundary.

Usage

  • The input zone raster can be integer or floating point. Note that this is an exception to the other zonal tools, which require the zone input to be integer type.

  • The data type of the output is the same as that of the input weight raster. If the values on the weight raster are floating point, the resultant output raster will be floating point. If the weight raster is integer, the output will be integer.

  • Zonal Fill can be used as part of a hydrological analysis to fill sinks to the minimum elevation of their watershed boundary.

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

Syntax

ZonalFill (in_zone_raster, in_weight_raster)
ParameterExplanationData Type
in_zone_raster

The input raster that defines the zones to be filled.

Raster Layer
in_weight_raster

Weight, or value, to be assigned to each zone.

Raster Layer

Return Value

NameExplanationData Type
out_raster

The output raster for which the zones have been filled.

Raster

Code sample

ZonalFill example 1 (Python window)

This example fills the zones in a raster with the minimum value from the weight raster along the zone boundary.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outZonalFill = ZonalFill("inzone", "zoneweight")
outZonalFill.save("C:/sapyexamples/output/zonefillout")
ZonalFill example 2 (stand-alone script)

This example fills the zones in a raster with the minimum value from the weight raster along the zone boundary.

# Name: ZonalFill_Ex_02.py
# Description: Fills zones using the minimum cell value from a weight 
#   raster, along the zone boundary.
# 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
inZoneRaster = "inzone"
zoneWeightRaster = "zoneweight"

# Execute ZonalStatistics
outZonalFill = ZonalFill(inZoneRaster, zoneWeightRaster)

# Save the output 
outZonalFill.save("C:/sapyexamples/output/zonefillout3")

Licensing information

  • ArcGIS Desktop Basic: Requires Spatial Analyst
  • ArcGIS Desktop Standard: Requires Spatial Analyst
  • ArcGIS Desktop Advanced: Requires Spatial Analyst

Related topics