Линейная статистика (Line Statistics) (Spatial Analyst)
Краткая информация
Вычисляет статистику для атрибутов линий в круговой окрестности вокруг каждой выходной ячейки.
Более подробно о том, как работает инструмент Линейная статистика
Использование
-
Для типов статистики Большинство, Среднее, Медиана, Меньшинство и Длина учитывается только часть линии, попадающая в окрестность. Для других типов статистики не имеет значения, используется ли часть линии или линия целиком.
-
Если в окрестности ячейки растра нет линий, при использовании типа статистики Разнообразие и Длина ячейке присваивается нулевое значение. При использовании других типов статистики, ячейке присваивается значение NoData.
-
Статистика по типу Большинство, Среднее, Медиана и Меньшинство взвешивается пропорционально длине линий. Например, если одна длина в два раза превышает другую длину, считается, что значение встречается в два раза чаще.
-
При использовании типа статистики Разнообразие значения на выходном растре всегда будут целочисленными. Для типов статистики Среднее и Длина значения на выходном растре всегда будут представлены числами с плавающей точкой. Для других типов статистики тип выходных данных совпадает с типом значений входного поля.
-
Когда поле является целочисленным, можно выбрать следующие доступные типы статистики наложения: Среднее, Большинство, Максимум, Медиана, Минимум, Меньшинство, Диапазон и Разнообразие. Когда значения в поле представлены числами с плавающей точкой, доступны только следующие типы статистики: Среднее, Максимум и Диапазон.
-
Для типов статистики Большинство (Majority), Максимум (Maximum), Медиана (Median), Минимум (Minimum), Меньшинство (Minority) и Диапазон (Range), тип выходных данных растра будет совпадать с типом значений входного поля. Для типов статистики Среднее и Длина, выходной растр всегда будет представлен числами с плавающей точкой. Для типа статистики Разнообразие выходной растр всегда будет целочисленным.
Синтаксис
Параметр | Объяснение | Тип данных |
in_polyline_features |
Входные полилинейные объекты, для которых будет вычислена линейная статистика. | Feature Layer |
field | Поле, которое будут использовано для расчета статистики. Оно может быть любым цифровым полем входного класса линейных объектов. Если тип Статистики установлен на Длину, Поле можете быть Нулевым. Если входные объекты содержат значения z, поле может быть представлено полем Shape. | Field |
cell_size (дополнительно) |
Размер ячейки для выходного набора растровых данных. Значение, устанавливаемое в параметрах среды. Если этот параметр не задан в параметрах среды, используется меньший размер из значений ширины или высоты экстента входного набора классов объектов в выходной пространственной привязке, деленный на 250. | Analysis Cell Size |
search_radius (дополнительно) |
Радиус поиска в единицах карты, в пределах которого будет вычислен требуемый тип статистики. Радиус по умолчанию равен пятикратному размеру ячейки. | Double |
statistics_type (дополнительно) |
Вычисляемый тип статистики. Статистика вычисляется для значений заданного поля для всех линий в окрестности.
| String |
Возвращено значение
Имя | Объяснение | Тип данных |
out_raster |
Выходной растр линейной статистики. | Raster |
Пример кода
В этом примере вычисляется средняя длина линейных сегментов на определенном радиусе каждой ячейки входного растра.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
lineStatOut = LineStatistics("streams", "LENGTH", 50, 500, "MEAN")
lineStatOut.save("C:/sapyexamples/output/linestatout")
В этом примере вычисляется средняя длина линейных сегментов на определенном радиусе каждой ячейки входного растра.
# Name: LineStatistics_Ex_02.py
# Description:
# 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
inLines = "streams.shp"
field = "LENGTH"
cellSize = 50
searchRadius = 500
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute LineStatistics
lineStatOut = LineStatistics(inLines, field, cellSize, searchRadius,
"MEAN")
# Save the output
lineStatOut.save("C:/sapyexamples/output/linestatisout")