Доступно с лицензией Spatial Analyst.
Краткая информация
Создает таблицу и график гистограммы, показывающие плотность распределения значений ячеек на входных данных Значение для каждой уникальной Зоны.
Иллюстрация
Использование
Зональная гистограмма позволяет вам исследовать плотность распределения значений в одном наборе данных в пределах классов другого набора данных. Примеры включают распределение уклонов в классах землепользования, распределения осадков в классах высот или распределение преступлений избиения полицейскими.
Зона определяется как все области входных данных, имеющие одно значение. Области не обязательно должны быть непрерывными. И растры, и векторные объекты могут использоваться для входных данных зон.
Если Размер ячейки во Входных растровых или векторных данных зон (in_zone_data в Python) и во Входного растра значений (in_value_raster в Python) различается, то размер выходной ячейки будет Максимальный из входных, а Входной растр значений будет использоваться как Растр замыкания для внутренних целей. Если размер ячейки совпадает, но ячейки не выровнены, то Входной растр значений будет использоваться как растр замыкания для внутренних целей. В любом из этих случаев перед выполнением зональной операции будет инициирован внутренний пересчет.
Если входные данные зон и значений являются растрами одинакового размера и ячейки выровнены, они будут использоваться непосредственно в инструменте и не будут пересчитаны во время выполнения инструмента.
Если Входные растровые или векторные данные зон (in_zone_data в Python) являются растром, это должен быть целочисленный растр.
Если Входные растровые или векторные данные зон (in_zone_data в Python) являются векторными объектами, они будут сконвертированы в растр при использовании размера ячейки и выравнивания ячеек из Входного растра значений (in_value_raster в Python).
Если Входные растровые или векторные данные зон (in_zone_data в Python) представлены набором точечных данных, возможно, что в каждую конкретную ячейку входного растра значений попадет больше одной точки. Для таких ячеек значение зоны определяется точкой с наименьшим ObjectID (или например, OID или FID).
Если Входные растровые или векторные данные зон (in_zone_data в Python) имеют перекрывающиеся полигоны, зональный анализ не будет выполняться для каждого индивидуального полигона. Поскольку векторные входные данные конвертируются в растр, каждое местоположение может иметь только одно значение.
Альтернативный метод заключается в обработке зональных данных итеративно для каждой из полигональных зон с последующим сопоставлением результатов.
Поле зоны (zone_field в Python) должно быть целочисленным или текстовым.
При указании растровых или векторных данных входной зоны (in_zone_data в Python) полем зоны по умолчанию будет первое доступное целочисленное или текстовое поле. Если других допустимых полей нет, по умолчанию используется поле ObjectID (например, OID или FID).
На диаграмме гистограммы число классов (бинов) для каждой зоны определяется параметром Входной растр значений.
- Если указан слой, тогда символы этого слоя определяют число классов.
- Если указан набор данных, по умолчанию будет представлено 256 классов. Но если вход представлен целочисленным растром с количеством уникальных значений менее 26, тогда это и будет общим числом уникальных значений.
Диаграмма зональной гистограммы не создается по умолчанию. Чтобы она создалась при запуске инструмента, задайте Выходное имя диаграммы.
Диаграмма только временная (в памяти). Для создания постоянной диаграммы с помощью инструмента Сохранить диаграмму (Save Graph) создайте файл диаграммы в формате «.grf» или в любом другом формате, доступном в этом инструменте.
См. раздел Среда анализа и Spatial Analyst для получения дополнительной информации о среде геообработки данного инструмента.
Синтаксис
ZonalHistogram(in_zone_data, zone_field, in_value_raster, out_table, {out_graph})
Параметр | Объяснение | Тип данных |
in_zone_data | Набор данных, который определяет зоны. Зоны могут быть определены слоем целочисленного растра или векторным слоем. | Raster Layer; Feature Layer |
zone_field | Поле, в котором содержатся значения, определяющие каждую зону. Это может быть целочисленное или строковое поле набора данных зоны. | Field |
in_value_raster | Значения растра для создания гистограмм. | Raster Layer |
out_table | Выходной файл таблицы. Формат таблицы определяется выходным местоположением и путем к ней. По умолчанию выходными данными будет таблица базы геоданных. Если путь указывает не на базу геоданных, формат будет определяется расширением. Если выбрано расширение .dbf, данные будут в формате dBASE. Если расширение не указано, это будет таблица INFO. Дополнительная выходная диаграмма создается по информации в таблице. | Table |
out_graph (Дополнительный) | Имя выходной диаграммы для отображения. Диаграмма временная. Чтобы сохранить ее, используйте инструмент Сохранить диаграмму. | Graph |
Пример кода
ZonalHistogram, пример 1 (окно Python)
В этом примере создается таблица зональной гистограммы .dbf.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outZonHisto = ZonalHistogram("zoneras", "zonfield", "valueras", "znhist_tbl.dbf")
ZonalHistogram, пример 2 (автономный скрипт)
В этом примере создается таблица зональной гистограммы .dbf и файл диаграммы.
# Name: ZonalHistogram_Ex_02.py
# Description: Creates a zonal histogram output table and
# a graph showing the amount of value cells
# for each unique input zone.
# 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
inZoneData = "zonras"
zoneField = "zonfield"
inValueRaster = "valueras"
outTable = "C:/sapyexamples/output/zonehist_tbl.dbf"
outGraph = "zonehist_gra"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute ZonalHistogram
ZonalHistogram(inZoneData, zoneField, inValueRaster, outTable, outGraph)
Параметры среды
Информация о лицензиях
- Basic: Требуется Spatial Analyst
- Standard: Требуется Spatial Analyst
- Advanced: Требуется Spatial Analyst