Skip To Content

Построить сетку нескольких переменных

Примечание:

Эта функция в настоящее время поддерживается только в Map Viewer Classic (прежнее название Map Viewer). Она будет доступна в следующей версии нового Map Viewer.

Инструмент Построить сетку нескольких переменных создает сетку квадратных или шестиугольных бинов и вычисляет значения для каждого бина на основе близости к одному или нескольким слоям. Эти изменения могут включать следующее:

  • Расстояние до ближайшего—расстояние от каждой ячейки до ближайшего объекта
  • Атрибут ближайшего—значение атрибутивного поля объекта, который находится ближе всего к ячейке
  • Сумма ближайших—статистика по всем объектам в пределах заданного расстояния от каждой ячейки
  • Статистика по пересечению—статистика по всем объектам, которые пересекают ячейку

Анализ с помощью GeoAnalytics Tools

Анализ, выполняемый с помощью GeoAnalytics Tools работает с использованием распределенной обработки по нескольким компьютерам ArcGIS GeoAnalytics Server и ядрам. GeoAnalytics Tools и стандартные инструменты анализа ArcGIS Enterprise имеют различные параметры и возможности. Более подробно об этих различиях см. в разделе Различия между инструментами анализа объектов.

Примеры

Выбор объектов инфраструктуры общественного транспорта для инвестирования может быть сложной проблемой, которая требует визуализации множества типов данных. У вас есть доступ ко множеству наборов данных, представляющих существующую инфраструктуру по всем США, а также несколько слоёв данных переписи населения. С помощью инструмента Построить сетку нескольких переменных вы можете собрать все эти данные в один набор набор данных, из которого можно построить визуализацию расстояния до ближайшей существующей инфраструктуры, посмотреть среднее число населения в окрестности и значения дохода населения по каждому местоположению в США.

Примечания по использованию

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

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

ПеременнаяОписаниеПараметр

Расстояние до ближайшего

Расстояние от центра каждого бина к ближайшему объекту во входном слое. Результат будет в единицах обрабатываемой пространственной привязки (см. Настройка обрабатываемой пространственной привязки).

Максимальное расстояние от центра бина – самое далекое расстояние от центра каждого бина, которое инструмент будет находить для объекта во входном слое. Это значение должно быть больше размера бина. Если в радиусе поиска не найдены объекты, бину будет назначено значение null для этой переменной.

Атрибут ближайшего

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

Поле для включения является поле во входном слое. Значение этого поля в ближайшем к центру бина объекте будет включено как атрибут бина в результирующем слое.

Максимальное расстояние от центра бина – самое далекое расстояние от центра каждого бина, которое инструмент будет находить для объекта во входном слое. Это значение должно быть больше размера бина. Если в радиусе поиска не найдены объекты, бину будет назначено значение null для этой переменной.

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

Статистика, вычисленная для отдельного поля и использующая все объекты, расположенные в заданном расстоянии от центра бина. Объект включается в вычисление, если любая из его частей находится в пределах этого расстояния.

Статистика для вычисления – это имя поля во входном слое и статистика для вычисления на основе этого поля.

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

Информация о пересекающих

Статистика, вычисленная для отдельного поля и использующая все объекты, которые пересекают бин. Если любая часть объекта находится в области бина, объект будет включен в вычисления.

Статистика для вычисления – это имя поля во входном слое и статистика для вычисления на основе этого поля. Для каждого бина объекты, которые пересекают этот бин будут участвовать в вычислениях. Если бин не пересекают никакие объекты, бину будет назначено значение null для этой переменной.

Для опций Итоговая информация по ближайшим и Итоговая информация по пересечению вы можете вычислить следующую статистику для числовых полей:

  • Количество – вычисляет количество ненулевых значений. Может использоваться с числовыми или текстовыми полями. Количество [null, 0, 2] – это 2.
  • Сумма – сумма числовых значений в поле. Сумма [null, null, 3] равна 3.
  • Среднее – среднее арифметическое числовых значений. Среднее [0, 2, null] равно 1.
  • Мин – минимальное значение числового поля. Минимальное значение [0, 2, null] равно 0.
  • Макс – максимальное значение числового поля. Максимальное значение [0, 2, null] равно 2.
  • Диапазон – диапазон числового поля. Он вычисляется вычитанием минимального значения из максимального. Диапазон [0, null, 1] равен 1. Диапазон [null, 4] равен 0.
  • Дисперсия – дисперсия по числовому полю в треке. Дисперсия [1] равна null. Дисперсия [null, 1,0,1, 1] равна 0,25.
  • Среднеквадратическое отклонение – Среднеквадратическое отклонение числового поля. Среднеквадратическое отклонение [1] равно null. Среднеквадратическое отклонение [null, 1,0,1, 1] равно 0,5.
По строковым полям можно вычислить:
  • Количество – количество не пустых строк.
  • Любая – эта статистика является случайной выборкой строкового значения в указанном поле.
Вся статистика вычисляется на ненулевых значениях.

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

Квадратные и шестиугольные бины

В анализе GeoAnalytics Tools, использующем биннинг (шестиугольниками или квадратами) с заданной географической системой координат, автоматически применяется система координат проекции, основанная на экстенте данных. Для получения более подробной информации о настройке системы координат для анализа см. Использование параметров среды анализа для инструментов GeoAnalytics в Map Viewer.

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

Ограничения

Инструмент Построить сетку нескольких переменных не работает с таблицами. В качестве входных слоёв могут быть точечные, линейные или площадные слои.

Как работает инструмент Построить сетку нескольких переменных

Далее описывается как работает инструмент Построить сетку нескольких переменных:

Вычисления расстояний

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

Центры квадратного и шестиугольного бинов

Для Расстояния к ближайшему и Атрибута к ближайшему расстояние к полигональным или линейным объектам измеряется с использованием самой ближайшей точки объекта к интересующему бину. Расстояние к точечным объектам измеряется по местоположению точки.

Пример измерения расстояния для квадратных бинов
Расстояние измеряется от бинов (выделено красным) к объектам в полигональном слое. Полигон B является ближайшим к центру бина в этом примере, и значение Расстояние к ближайшему для этого бина будет 1050.

Суммарный расчет

Для Итоговой информации по ближайшим объекты включаются в вычисление итоговой статистики, если любая их часть попадает в радиус поиска от центра бина, который определяется параметром Суммировать объекты в пределах. Для Итоговой информации по пересечению объекты включаются в вычисления, если любая их часть попадает внутрь области бина (радиус окружности не используется).

Пример радиуса итоговой информации для квадратных бинов
Радиус поиска (желтым цветом) вокруг бина (выделен красным), который используется для суммирования объектов для Итоговой информации о близлежащих. В этом примере были созданы 500-метровые квадратные бины, а для Суммирования объектов в пределах выбрано 1500 метров. Объекты C и B будут включены в вычисление статистики для этих бинов.

Понимание результатов

Любой бин со всеми атрибутами null не будет включен в результат. Это означает, что полученный в результате слой растянется на максимальный экстент ваших входных объектов плюс указанное самое большое расстояние поиска переменных (внутри экстента обрабатываемой пространственной привязки).

Каждая настроенная переменная станет полем в атрибутивной таблице результирующего слоя. Автоматически ни одно из полей входных слоёв не будет включено в результат, вы должны указать, какая информация будет включена, выполнив настройку переменных.

Пример ArcGIS API for Python

Инструмент Построить сетку нескольких переменных доступен в ArcGIS API for Python.

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


# Import the required ArcGIS API for Python modules
import arcgis
from arcgis.gis import GIS
from arcgis.geoanalytics import summarize_data
from arcgis.features import FeatureLayer

# Connect to your ArcGIS Enterprise portal and confirm that GeoAnalytics is supported
portal = GIS("https://myportal.domain.com/portal", "gis_publisher", "my_password")
if not portal.geoanalytics.is_supported():
    print("Quitting, GeoAnalytics is not supported")
    exit(1)   

# Find the big data file share dataset you'll use for analysis
search_result = portal.content.search("", "Big Data File Share")

# Look through the search results for a big data file share with the matching name
bdfs_search = next(x for x in search_result if x.title == "bigDataFileShares_CityData")

# Look through the big data file share for roads
roads = next(x for x in bdfs_search.layers if x.properties.name == "roads")

# Look through the big data file share for intersections
intersections = next(x for x in bdfs_search.layers if x.properties.name == "intersections")

# Find a feature layer named "Demographics" in your ArcGIS Enterprise portal
demographics_search_result = portal.content.search("Demographics", "Feature Layer")
demographics_layer = demographics_search_result[0].layers[0]

inputs = [road, intersections, demographics_layer]
variables = [
    {
        "layer":0,
        "variables":[
            {
                "type":"DistanceToNearest",
                "outFieldName":"DistToRoad",
                "searchDistance":20,
                "searchDistanceUnit":"Kilometers",
                "filter":"Rural = 'false'"
            }
        ]
    },
 {
        "layer":1,
        "variables":[
            {
                "type":"AttributeOfNearest",
                "outFieldName":"intersection",
                "attributeField":"intersection_name",
                "searchDistance":50,
                "searchDistanceUnit":"Kilometers"
            }
        ]
    },
 {
        "layer":2,
        "variables":[
            {
                "type":"AttributeSummaryOfRelated,
                "outFieldName":"MeanPopAge",
                "statisticType":"Mean",
                "statisticField":"Age",
                "searchDistance":50,
                "searchDistanceUnit":"Kilometers"
            },
           {
                "type":"AttributeSummaryOfRelated,
                "outFieldName":"VarIncome",
                "statisticType":"Variance",
                "statisticField":"Income",
                "searchDistance":50,
                "searchDistanceUnit":"Kilometers"

            }
        ]
    }
]

# Set the tool environments
arcgis.env.verbose = True
arcgis.env.defaultAggregations = True

# Run the Build Multi-Variable Grid tool
output = summarize_data.build_multivariable_grid(input_layers = inputs,
    variable_calculations = variables,
    bin_size = 10,
    bin_unit = "Kilometers",
    bin_type = "Hexagon",
    output_name = "CityPlanningGrid")

# Visualize the tool results if you are running Python in a Jupyter Notebook
processed_map = portal.map('City, State', 10)
processed_map.add_layer(output)
processed_map

Похожие инструменты

Используйте инструмент Построить сетку нескольких переменных, чтобы суммировать информацию по множеству слоёв в одну сетку полигонов, либо для визуализации или дальнейшего использования в прогнозировании с обучением и моделях классификации. Другие инструменты могут применяться для решения похожих, но немного отличающихся задач.

Инструменты анализа Map Viewer Classic

Если вы хотите составить итоговую информацию по одному входному слою и перевести её в бины, или выполнить суммирование в полигональный слой, используйте инструмент Суммировать в пределах.

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

Если вы будете суммировать точки, линии или полигоны, используя различные пространственные отношения, используйте инструмент Присоединить объекты.

Если вы будете суммировать линии или полигоны, используя стандартные инструменты анализа, см. Суммировать в пределах.

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

Инструменты анализа ArcGIS Pro

Инструмент Построить многовариантную сетку выполняет функции, схожие с инструментами Суммировать близлежащие и Ближайший.