Распространенность (Spatial Analyst)

Доступно с лицензией Spatial Analyst.

Краткая информация

Определяет значение в списке аргументов, который находится на определенном уровне распространенности по принципу «ячейка-за-ячейкой». Конкретный уровень распространенности (количество повторов каждого значения) задается первым аргументом.

Иллюстрация

Пример входных и выходных значений инструмента Распространенность
OutRas = Popularity(ValRas, [InRas1, InRas2, InRas3])

Использование

  • Этот инструмент оценивает встречаемость значений входных растров для каждого местоположения и ранжирует их с использованием порядковой шкалы – то есть, определяет самое распространенное значение, второе по распространенности значение, и так далее. Он выдаст значение заданного n-го наиболее распространенного значения, определяемого значением распространенности.

  • В списке входных растров порядок не важен. Однако растр, который определяет положение распространенности, должен предшествовать им.

  • В перечне входных растров может быть задано произвольное число растров.

  • Если для какой-либо ячейки входные значения совпадают, независимо от заданного значения распространенности, выходное значение будет равно входному для этого местоположения ячейки.

  • Если местоположение ячейки не содержит данных ни по одному из входных растров, то этому местоположению будет присвоено значение NoData на выходе.

  • Если не будет найдено единственное значение, которое является n-ым наиболее распространенным, местоположению на выходном растре будет присвоено значение NoData. Эта ситуация может возникнуть в том случае, если значения входных растров в конкретном местоположении различаются, либо когда значения двух или нескольких входных растров встречаются одинаковое количество раз, и число повторов равно значению n-го наиболее распространенного значения. Возврат одного из входных значений растров, например, первого, встреченного в процессе сканирования, будет обманчивым. Вы не будете знать, является ли значение n-ым наиболее распространенным значением в действительности.

  • Если значение распространенности больше числа входных растров, каждому местоположению ячейки в выходном растре будет присвоено значение NoData.

  • Если в качестве значения распространенности растра задан ноль, выходным значением будет значение NoData.

  • Уровень распространенности 1 – это наиболее часто встречающееся значение, аналогичное опции Большинство инструмента Статистика по ячейкам.

  • Если хотя бы один из входных растров содержит значения с плавающей точкой, выходные данные также будут содержать числа с плавающей точкой; в противном случае, выходной растр будет целочисленным.

  • Если параметр Обработать как многоканальный не отмечен (для process_as_multiband задано SINGLE_BAND в Python), будет использоваться только первый канал многоканального Входного растра распространенности или константы (in_popularity_raster_or_constant в Python). Каждый канал многоканального Входного растра (in_rasters в Python) будет обрабатываться отдельно - как одноканальный растр.

  • Если отмечен параметр Обработать как многоканальный (для process_as_multiband задано MULTI_BAND в Python), каждый многоканальный входной растр будет обрабатываться, как многоканальный растр.

    Число каналов выходного растра зависит от Входного растра растр распространенности или константы. Если Входной растр распространенности одноканальный, число каналов выходного растра будет соответствовать максимальному числу каналов из всех входных многоканальных растров. Если растр распространенности многоканальный, выходной растр будет содержать такое же число каналов, как и этот растр распространенности.

    Если любой из Входных растров является растром с числом каналов, меньшим, чем содержится в выходном растре, отсутствующие каналы будут интерпретированы, как каналы, заполненные значениями NoData. Если значение ячейки растра распространенности берет значение отсутствующего канала, выходной растр получит значение NoData. Если любой из входных растров - константа, это будет интерпретироваться как многоканальный растр, все значения во всех каналах которого будут равны этому значению, а число каналов будет соответствовать числу каналов выходного растра.

  • В ArcPy если все входные данные являются многомерными растрами с одинаковым количеством переменных, инструмент выполнит операцию для всех срезов с одинаковым значением измерения, а на выходе будет многомерный растр. Переменные во входных данных должны иметь одинаковые или общие размеры.

    Если во всех многомерных растрах есть одна переменная, но у неё разные названия, задайте переменную геообработки matchMultidimensionalVariable как False, чтобы выполнить операцию.

    В ArcPy если несколько входных данных являются многомерным растром, а другой вход является константой, инструмент выполнит операцию для всех срезов для всех переменных с постоянным значением, и на выходе будет многомерный растр.

  • См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.

Параметры

ПодписьОписаниеТип данных
Входной растр распространенности или константа

Входной растр, определяющий возвращаемое положение распространенности.

В качестве входных данных может быть задано число; кроме того, необходимо указать экстент и размер ячейки в параметрах среды.

Raster Layer; Constant
Входные растры

Перечень входных растров, используемых для оценки распространенности значений для каждого местоположения ячейки.

Raster Layer
Обработать как многоканальный
(Дополнительный)

Задает способ обработки каналов входного многоканального растра.

  • Не отмечено – каждый канал многоканального растра будет обработан отдельно как одноканальный растр. Это значение по умолчанию
  • Отмечено – каждый многоканальный входной растр будут обрабатываться как многоканальный растр. Эта операция будет выполнятся для каждого канала из входного набора с использованием соответствующего номера канала для остальных входных данных.
Boolean

Возвращаемое значение

ПодписьОписаниеТип данных
Выходной растр

Выходной растр.

Каждая ячейка выходного растра представляет значение из того же местоположения входных растров, которое соответствует входному значению распространенности.

Raster

Popularity(in_popularity_raster_or_constant, in_rasters, {process_as_multiband})
ИмяОписаниеТип данных
in_popularity_raster_or_constant

Входной растр, определяющий возвращаемое положение распространенности.

В качестве входных данных может быть задано число; кроме того, необходимо указать экстент и размер ячейки в параметрах среды.

Raster Layer; Constant
in_rasters
[in_raster,...]

Перечень входных растров, используемых для оценки распространенности значений для каждого местоположения ячейки.

Raster Layer
process_as_multiband
(Дополнительный)

Задает способ обработки каналов входного многоканального растра.

  • SINGLE_BANDКаждый канал многоканального растра будет обработан отдельно как одноканальный растр. Это значение по умолчанию
  • MULTI_BANDКаждый многоканальный входной растр будут обрабатываться как многоканальный растр. Эта операция будет выполнятся для каждого канала из входного набора с использованием соответствующего номера канала для остальных входных данных.
Boolean

Возвращаемое значение

ИмяОписаниеТип данных
out_raster

Выходной растр.

Каждая ячейка выходного растра представляет значение из того же местоположения входных растров, которое соответствует входному значению распространенности.

Raster

Пример кода

Popularity, пример 1 (окно Python)

В этом примере выполняется операция распространённости на нескольких входных растрах, в результате чего получается растр IMG.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outPopularity = Popularity("cost", ["degs", "negs", "fourgrd"])
outPopularity.save("C:/sapyexamples/output/outpop.img")
Popularity, пример 2 (автономный скрипт)

В этом примере выполняется операция распространённости на нескольких входных растрах, в результате чего получается растр грида.

# Name: Popularity_Ex_02.py
# Description: Determines the value in an argument list that is
#              at a certain level of popularity 
# 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
inPopularityRaster = "cost"
inRaster01 = "degs"
inRaster02 = "negs"
inRaster03 = "fourgrd"

# Execute Popularity
outPopularity = Popularity(inPopularityRaster, [inRaster01, inRaster02, inRaster03])

# Save the output 
outPopularity.save("C:/sapyexamples/output/outpop")

Информация о лицензиях

  • Basic: Обязательно Spatial Analyst
  • Standard: Обязательно Spatial Analyst
  • Advanced: Обязательно Spatial Analyst

Связанные разделы