Доступно с лицензией Spatial Analyst.
Краткая информация
Сокращает выбранные зоны на заданное число ячеек, замещая их значением ячеек, наиболее частым в окрестности.
Иллюстрация
Использование
Определенные значения зоны считаются передними зонами, в то время как остальные значения зоны считаются фоновыми. С помощью этого инструмента, ячейки в высокоприоритетных зонах могут быть заменены ячейками в фоновых зонах.
Когда частью выбранного для сокращения набора являются два прилегающих региона, граница между ними меняться не будет.
Значение NoData имеет тот же приоритет, что и любое другое действительное значение, которое используется для заполнения областей, освобождаемых за счет выбранных сокращаемых значений. Следовательно, если выбранное значение является смежным с значением NoData, после выполнения сокращения оно может быть заменено на значение NoData.
См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
Shrink(in_raster, number_cells, zone_values)
Параметр | Объяснение | Тип данных |
in_raster | Входной растр, для которого будут определяться сокращаемые зоны. Должен быть целочисленным. | Raster Layer |
number_cells | Количество ячеек, на которое будет сокращена каждая заданная зона. Значение должно быть целым числом больше 0. | Long |
zone_values [zone_value,...] | Перечень значений сокращаемых зон. Значения зон должны быть представлены целыми числами. Они могут быть даны в любом порядке. | Long |
Возвращаемое значение
Имя | Объяснение | Тип данных |
out_raster | Выходной генерализованный растр. Заданные зоны входного растра будут сокращены на заданное количество ячеек. Выходные данные всегда будут целочисленными. | Raster |
Пример кода
Shrink, пример 1 (окно Python)
В этом примере сокращается зона, определенная списком значений, на 2 ячейки.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outShrink = Shrink("land", 2, [1, 3, 7])
outShrink.save("c:/sapyexamples/output/shrinkout")
Shrink, пример 2 (автономный скрипт)
В этом примере сокращается зона, определенная списком значений, на 2 ячейки.
# Name: Shrink_Ex_02.py
# Description: Shrinks the selected zones by a
# specified number of cells.
# 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 = "land"
cellRemove = 2
zoneSet = [1,3,7,9]
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute Shrink
outShrink = Shrink(inRaster, cellRemove, zoneSet)
# Save the output
outShrink.save("c:/sapyexamples/output/outshrink")
Параметры среды
Информация о лицензиях
- Basic: Требуется Spatial Analyst
- Standard: Требуется Spatial Analyst
- Advanced: Требуется Spatial Analyst