<<На Главную         <В меню Советы по ArcGIS 

  Что мне нравиться в ArcGIS, так это наличие невероятного количества всяких полезных утилит, инструментов и функций. По опыту, все основные стандартные задачи для работы с векторными, растровыми  и атрибутивными данными в ArcToolBox реализованы с вероятностью 95 %. Проблема только заключается в том, чтобы грамотно подобрать  под вашу задачу подходящую функцию и знать, где её найти.

Как пример,  пришлось, намедни, столкнуться с задачей пространственно-случайного моделирования разброса точек. И что вы думаете? Нашлась и такая, на первый взгляд экзотическая  утилитка! Но, об этом - чуть более подробно.

Представим, что в некой абстрактной задаче нужно смоделировать случайным образом распределённые точки, ну, скажем по линиям прямоугольной сетки (слой setka4):

 

Карта ArcGIS

 

Для загрузки нужной утилиты открываем набор инструментов ArcToolBox:

 

 

... и щёлкаем по Create Random Points (см. рисунок выше). Интерфейс интересующей нас в данном случае программки следующий:

 

 

На форме выше в поле Output Point Feature Class  задаём выходной слой случайно распределённых точек (r_point в нашем случае). В поле Constraining Feature class указываем набор, на котором будем моделировать разброс точек.

 

После отработки утилиты видим такой результат :

 

 

Инструмент Create Random Point создал набор случайно распределённых точек r_point по слою setka4.

 

 

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

 

Создание случайно распределённых точек ArcGIS

 

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

В рамках ArcGIS простое решение моделирования случайного распределения может заключаться в следующем  алгоритме.

В атрибутивной таблице по опции Field Calculator:

 

 

... набираем следующее нехитрое выражение  на диалекте Python:  arcgis.rand("Integer 0 to 100")

 

 

После отработки Field Calculator выбранное поле будет заполнено случайными числами (от 0 до 100 в приведённом примере)

 

Если есть необходимость смоделировать функцию нормального статистического распределения (кривая Гаусса), то можно использовать следующее выражение: arcgis.rand("Normal x y"). X в данном случае среднее, а Y - среднее квадратичное  отклонение.

 

Убедиться в том, что функция моделирования отрабатывает должным образом довольно легко. Для этого в атрибутивной таблице  в нужном столбце щёлкаем по заголовку и по правой кнопке выбираем Statistics ... :

 

 

... и видим типичную для нормального распределения колоколообразную гистограмму :

 

 

Далее, как вариант, можно провести по полученным данным анализ плотности с помощью утилиты Point Density:

 

 

... которая имеет сл. интерфейс:

 

 

Результат  анализа  смоделированного таким образом распределения плотности точек может выглядеть приблизительно так:

 

Анализ плотности в ArcGIS

 

Развивая тему, есть возможность на основе интерполированного растра плотности создать карту изолиний - что-то вроде этого:

 

Карта Kernel Density ArcGIS

 

 

Ещё один пример реально смоделированного по изложенной методике распределения некоего параметра Z:

 

 

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

 

Как создать набор точек в ArcGIS по данным из Excel можно посмотреть здесь

©Simashkov.2012

14.08.2012 г. Кенозёрский национальный парк, Лекшмозеро.

Назад