Как посчитать площадь в qgis
Рассчитать площадь пересекающихся полигонов в QGIS
У меня есть две коллекции шейп-файлов:
Я хочу получить статистику по районам этих категорий землепользования с разбивкой по почтовому индексу, административным и политическим районам и количеству точек одинаковыми средствами. Например, 4,1 га парка в SE15, 879 деревьев в SE22 и так далее.
Я использую QGIS. Я обработал свои необработанные данные, чтобы подготовить все шейп-файлы, но после долгих бесполезных поисков на этом и других веб-сайтах я не могу найти способ сделать это.
Это «Join Attributes by Location» вполне подходит для этой цели.
Предположим, у нас есть шейп-файлы Parks и PostCodes на карте, как показано на дисплее. Парки имеют поле «Площадь», а почтовые индексы имеют поле «ZipCode». Значения соответствуют меткам, отображаемым на карте. Мы постараемся найти сумму площадей парков в каждом почтовом полигоне.
Из Vector> Инструменты управления данными> Выберите инструмент «Объединить атрибуты по местоположению»
Установите параметры, как показано на рисунке, чтобы мы могли найти сумму площадей парков в каждом полигоне PostCode, а также найти сумму парков в каждом полигоне.
Из Vector> Инструменты управления данными> Выберите инструмент «Объединить атрибуты по местоположению»
задайте атрибуты, как показано на рисунке, чтобы мы могли найти сумму площадей парков в каждом полигоне PostCode, а также найти сумму парков в каждом полигоне.
Выходной файл будет шейп-файлом, идентичным шейп-файлу PostCodes в геометрии, но атрибуты будут отражать выходные данные предыдущей операции.
Чтобы рассчитать площадь пересекающихся полигонов:
Чтобы получить очки, содержащиеся в полигонах:
Расчет основных пространственных характеристик объектов в QGIS
В статье описываются особенности получения основных пространственных характеристик объектов (координат, длин, площадей) хранящихся в shape-файлах при использовании свободной ГИС QGIS.
При написании использована версия QGIS 1.9.90-Alpha ad955e2 [1]
Содержание
Вводные замечания
Технически, получить координаты, длины или площади пространственных объектов в современных ГИС достаточно просто. Гораздо сложнее понять насколько точны значения которые мы получили, и что можно сделать для улучшения точности полученных величин.
В зависимости от используемой для расчета системы координат (СК) и метода расчет пространственных характеристик объекта можно осуществить тремя способами:
На данный момент в QGIS реализовано два инструмента для расчета площадей:
Рассмотрим использование различных инструментов QGIS для расчетов пространственных характеристик. В расчетах, для проверки сходимости результатов, будем использовать Geosample: Открытый набор геоданных для различного ПО ГИС. Готовый проект для QGIS, включающий все необходимые для данной статьи слои, можно скачать здесь.
Использование fTools (инструмент «Добавить поле геометрии»)
Последовательность действий такова.
Инструмент доступен из меню Вектор→Обработка геометрии→Экспортировать/Добавить поле геометрии После запуска инструмента открывается диалоговое меню предоставляющее следующие возможности:
Пример 1. Вычисление координат точек в СК слоя
1. Загрузим в QGIS слой poi-osm.shp (точечные объекты OSM) из геосэмпла. Проверим в какой СК находится данный слой. Для этого в менеджере слоев щелкнем по нему правой кнопкой мыши и в выпадающем меню выберем пункт «Свойства». В открывшемся диалоговом окне выберем вкладку «Метаданные».
означает, что данные находятся в географической СК. Таким образом, для того, чтобы получить координаты точек в десятичных градусах, перепроецировать ничего не нужно.
2. Выполним Vector→Обработка геометрии→Экспортировать/Добавить поле геометрии
3. Следующее диалоговое окно предлагает выбрать слой для которого необходимо рассчитать пространственные характеристики.
Проверим результат:
Откроем таблицу атрибутов нового слоя: Слой→Открыть таблицу атрибутов
Появилось две новых колонки XCOORD (долгота) и YCOORD (широта) выраженные в десятичных градусах.
Пример 2. Вычисление координат точек в СК вида
Для того, чтобы получить координаты точек в метрической системе, можно либо перепроецировать имеющийся точечный слой в какую-нибудь прямоугольную СК и произвести расчеты, как показано в примере 1, либо задать необходимую СК проекту и рассчитать пространственные характеристики в ней, не перепроецируя при этом слой.
1. Зададим СК проекта: WGS 84, UTM zone 44N (данные геосемпла лежат в трех зонах UTM, с 43N по 45N, для уменьшения искажений расчетов мы возьмем центральную). Для этого выполним:
Установки→Свойства проекта и откроем вкладку Система координат.
Установим галочку «Включить преобразование координат на лету»
В графе «Filter» наберем или код EPSG проекции: В результате останутся только те СК, которые содержат в названии это сочетание букв.
В меню «Coordinate reference systems of the world» Выберем «WGS 84 zone 44N».
Все слои вида отображаются теперь в выбранной нами проекции.
2. Теперь рассчитаем координаты точек в установленной нами СК проекта (вида):
Выполним Vector→Обработка геометрии→Экспортировать/Добавить поле геометрии
Из выпадающего списка выберем poi-osm.shp.
В качестве способа расчета выберем СК проекта (Project CRS)
Сохраним результаты расчета в том же файле (галочка «Save to New shapefile» не установлена).
После пересчета координат появится сообщение, что слой обновлен. Жмем «ОК».
3. Проверим результат: Откроем таблицу атрибутов нового слоя: Слой→Открыть таблицу атрибутов
Добавились новые поля геометрии: XCOORD (долгота) и YCOORD (широта), причем, координаты выражены в метрах в установленной нами СК (WGS84/UTM zone 44N).
Аналогичным образом в СК вида рассчитываются пространственные характеристики линейных и полигональных слоев.
Пример 3. Вычисление координат точек на эллипсоиде
Как уже было сказано, в большинстве случаев, предпочтительным (дающим наиболее точные результаты) является расчет пространственных характеристик объектов на эллипсоиде. Получить представление насколько могут отличаться результаты расчетов на эллипсоиде от результатов расчетов в различных СК можно из статьи «Сравнение разных способов вычисления длин и азимутов».
Перед тем, как производить расчеты на эллипсоиде необходимо его выбрать, для этого выполним: Установки→Параметры. На вкладке «Инструменты» выбрать из выпадающего списка «Эллипсоид для вычисления расстояний». По умолчанию это универсальный эллипсоид WGS 84.
После выбора эллипсоида для расчетов, рассчитаем координаты точек:
1. Выполним Vector→Обработка геометрии→Экспортировать/Добавить поле геометрии.
2. Из выпадающего списка выберем poi-osm.shp.
3. В качестве способа расчета выберем расчет на эллипсоиде (Ellipsoid).
4. Сохраним результаты расчета в том же файле (галочка «Save to New shapefile» не установлена).
6. После пересчета координат появится сообщение, что слой обновлен. Жмем «ОК».
Имеем следующий результат:
Аналогичным образом на эллипсоиде рассчитываются пространственные характеристики линейных и полигональных слоев.
Использование калькулятора полей
Расчет пространственных характеристик точечных, линейных и полигональных объектов с помощью калькулятора полей производится по одному алгоритму. Последовательность действий при использовании калькулятора полей следующая:
Пример 4. Расчет площади с помощью калькулятора полей
Рассчитаем площади объектов в полигональном слое admin геосемпла (слой с административными границами областей) с помощью калькулятора полей.
Как уже было сказано, калькулятор полей производит расчеты только в СК слоя. По этому, для расчетов длин и площадей, а также координат точек в метрах, нам необходимо иметь слои в прямоугольных СК. Слой admin находится в географической СК, по этому нам предварительно необходимо перепроецировать его в прямоугольную СК, для этого выполняем:
8. Добавляем вновь созданный shape-файл в проект.
9. Открываем атрибутивную таблицу.
10. Переводим слой в режим редактирования , при этом становится активной кнопка запуска калькулятора полей.
11. Запускаем калькулятор полей, нажав на кнопку . Открывается диалоговое окно калькулятора полей, состоящее из меню параметров создания новых полей, списка функций и подсказок по ним, а также результирующей командной строки (Expression) куда будут внесены все требуемые команды для вычислений.
Далее возможно два варианта действий, в зависимости от того, имеется ли у вас в атрибутивной таблице требуемое поле.
12. Создадим новое поле для записи результатов расчета площади. В случае, если в атрибутивной таблице файла еще нет специальных колонок для отображения информации о пространственных характеристиках, ставим галочку «Create new field» (Создать новое поле).
Зададим параметры поля для расчета площади:
14. Далее, необходимо выбрать необходимую расчетную функцию из списка. Все функции для расчета пространственных характеристик объектов находятся в группе «Геометрия». Добавить функцию в командную строку можно либо прописав ее вручную, либо двойным щелчком мыши по необходимой функции из списка.
15. После всех манипуляций окно должно приобрести вид:
16. Жмем «ОК» и смотрим на атрибутивную таблицу. В новой колонке «AREA» отображаются предварительные результаты расчетов (не усеченные до 1-го знака после запятой. Нажимаем кнопку «Сохранить изменения» . После этой операции данные записываются согласно настроенным нами параметрам поля: т.к. мы установили точность 1 знак после запятой, данные были округлены до 1-го знака после запятой. В случае, если результаты стали отрицательными, это означает, что недостаточно значащих знаков и нужно создать новое поле с большим количеством значащих знаков.
Заключение
В заключение, сделаем важное замечание: правилом хорошего тона считается документирование, какое ПО (версия) и какой инструмент использовались для расчета пространственных характеристик объектов. Дело в том, что в разном ПО используются отличающиеся алгоритмы расчетов, параметры (точность назначения) СК и эллипсоидов, что приводит к тому, что для одних и тех же данных рассчитанные пространственные характеристики несколько отличаются. В научном мире приоритет отдается алгоритмам имеющим открытый исходный код, чтобы каждый мог воспроизвести расчеты и найти ошибки алгоритмов. В связи с этим QGIS как инструмент в руках ученого предстает в более выгодном свете.
При расчетах длин и площадей с использованием проекций необходимо также указывать, какие именно проекции использовались, особенно это касается расчетов в глобальном охвате, т.к. чем больше охват территории, тем больше разница в результатах расчетов выполненных в разных проекциях.
Вычислить площадь пересекающихся полигонов в QGIS
У меня есть две коллекции шейп-файлов:
Я использую QGIS. Я обработал свои необработанные данные, чтобы подготовить все шейп-файлы, но после долгих бесплодных поисков на этом и других веб-сайтах я не вижу способа сделать это.
В ‘Join Attributes by Location’ вполне подходит для этой цели.
В меню «Вектор»> «Инструменты управления данными»> выберите инструмент «Объединить атрибуты по местоположению».
Установите параметры, как показано на рисунке, чтобы мы могли найти сумму площадей парков в каждом полигоне PostCode, а также найти сумму парков в каждом полигоне.
В меню «Вектор»> «Инструменты управления данными»> выберите инструмент «Объединить атрибуты по местоположению».
задайте атрибуты, как показано на рисунке, чтобы мы могли найти сумму площадей парков в каждом полигоне PostCode, а также найти сумму парков в каждом полигоне.
Результатом будет шейп-файл, идентичный шейп-файлу PostCodes по геометрии, но атрибуты будут отражать выходные данные предыдущей операции.
Чтобы вычислить площадь пересекающихся многоугольников:
Чтобы получить точки, содержащиеся в полигонах:
Вот очень простой способ сделать это с помощью QGIS 3.14
Вы можете использовать инструмент «Пересечение» и следовать той же процедуре, чтобы избежать нулевых значений.
GIS-LAB
Географические информационные системы и дистанционное зондирование
Расчет основных пространственных характеристик объектов в QGIS
В статье описываются особенности получения основных пространственных характеристик объектов (координат, длин, площадей) хранящихся в shape-файлах при использовании свободной ГИС QGIS.
При написании использована версия QGIS 1.9.90-Alpha ad955e2 [1]
Содержание
[править] Вводные замечания
Технически, получить координаты, длины или площади пространственных объектов в современных ГИС достаточно просто. Гораздо сложнее понять насколько точны значения которые мы получили, и что можно сделать для улучшения точности полученных величин.
В зависимости от используемой для расчета системы координат (СК) и метода расчет пространственных характеристик объекта можно осуществить тремя способами:
На данный момент в QGIS реализовано два инструмента для расчета площадей:
Рассмотрим использование различных инструментов QGIS для расчетов пространственных характеристик. В расчетах, для проверки сходимости результатов, будем использовать Geosample: Открытый набор геоданных для различного ПО ГИС. Готовый проект для QGIS, включающий все необходимые для данной статьи слои, можно скачать здесь.
[править] Использование fTools (инструмент «Добавить поле геометрии»)
Последовательность действий такова.
Инструмент доступен из меню Вектор→Обработка геометрии→Экспортировать/Добавить поле геометрии После запуска инструмента открывается диалоговое меню предоставляющее следующие возможности:
[править] Пример 1. Вычисление координат точек в СК слоя
1. Загрузим в QGIS слой poi-osm.shp (точечные объекты OSM) из геосэмпла. Проверим в какой СК находится данный слой. Для этого в менеджере слоев щелкнем по нему правой кнопкой мыши и в выпадающем меню выберем пункт «Свойства». В открывшемся диалоговом окне выберем вкладку «Метаданные».
означает, что данные находятся в географической СК. Таким образом, для того, чтобы получить координаты точек в десятичных градусах, перепроецировать ничего не нужно.
2. Выполним Vector→Обработка геометрии→Экспортировать/Добавить поле геометрии
3. Следующее диалоговое окно предлагает выбрать слой для которого необходимо рассчитать пространственные характеристики.
Проверим результат:
Откроем таблицу атрибутов нового слоя: Слой→Открыть таблицу атрибутов
Появилось две новых колонки XCOORD (долгота) и YCOORD (широта) выраженные в десятичных градусах.
[править] Пример 2. Вычисление координат точек в СК вида
Для того, чтобы получить координаты точек в метрической системе, можно либо перепроецировать имеющийся точечный слой в какую-нибудь прямоугольную СК и произвести расчеты, как показано в примере 1, либо задать необходимую СК проекту и рассчитать пространственные характеристики в ней, не перепроецируя при этом слой.
1. Зададим СК проекта: WGS 84, UTM zone 44N (данные геосемпла лежат в трех зонах UTM, с 43N по 45N, для уменьшения искажений расчетов мы возьмем центральную). Для этого выполним:
Установки→Свойства проекта и откроем вкладку Система координат.
Установим галочку «Включить преобразование координат на лету»
В графе «Filter» наберем или код EPSG проекции: В результате останутся только те СК, которые содержат в названии это сочетание букв.
В меню «Coordinate reference systems of the world» Выберем «WGS 84 zone 44N».
Все слои вида отображаются теперь в выбранной нами проекции.
2. Теперь рассчитаем координаты точек в установленной нами СК проекта (вида):
Выполним Vector→Обработка геометрии→Экспортировать/Добавить поле геометрии
Из выпадающего списка выберем poi-osm.shp.
В качестве способа расчета выберем СК проекта (Project CRS)
Сохраним результаты расчета в том же файле (галочка «Save to New shapefile» не установлена).
После пересчета координат появится сообщение, что слой обновлен. Жмем «ОК».
3. Проверим результат: Откроем таблицу атрибутов нового слоя: Слой→Открыть таблицу атрибутов
Добавились новые поля геометрии: XCOORD (долгота) и YCOORD (широта), причем, координаты выражены в метрах в установленной нами СК (WGS84/UTM zone 44N).
Аналогичным образом в СК вида рассчитываются пространственные характеристики линейных и полигональных слоев.
[править] Пример 3. Вычисление координат точек на эллипсоиде
Как уже было сказано, в большинстве случаев, предпочтительным (дающим наиболее точные результаты) является расчет пространственных характеристик объектов на эллипсоиде. Получить представление насколько могут отличаться результаты расчетов на эллипсоиде от результатов расчетов в различных СК можно из статьи «Сравнение разных способов вычисления длин и азимутов».
Перед тем, как производить расчеты на эллипсоиде необходимо его выбрать, для этого выполним: Установки→Параметры. На вкладке «Инструменты» выбрать из выпадающего списка «Эллипсоид для вычисления расстояний». По умолчанию это универсальный эллипсоид WGS 84.
После выбора эллипсоида для расчетов, рассчитаем координаты точек:
1. Выполним Vector→Обработка геометрии→Экспортировать/Добавить поле геометрии.
2. Из выпадающего списка выберем poi-osm.shp.
3. В качестве способа расчета выберем расчет на эллипсоиде (Ellipsoid).
4. Сохраним результаты расчета в том же файле (галочка «Save to New shapefile» не установлена).
6. После пересчета координат появится сообщение, что слой обновлен. Жмем «ОК».
Имеем следующий результат:
Аналогичным образом на эллипсоиде рассчитываются пространственные характеристики линейных и полигональных слоев.
[править] Использование калькулятора полей
Расчет пространственных характеристик точечных, линейных и полигональных объектов с помощью калькулятора полей производится по одному алгоритму. Последовательность действий при использовании калькулятора полей следующая:
[править] Пример 4. Расчет площади с помощью калькулятора полей
Рассчитаем площади объектов в полигональном слое admin геосемпла (слой с административными границами областей) с помощью калькулятора полей.
Как уже было сказано, калькулятор полей производит расчеты только в СК слоя. По этому, для расчетов длин и площадей, а также координат точек в метрах, нам необходимо иметь слои в прямоугольных СК. Слой admin находится в географической СК, по этому нам предварительно необходимо перепроецировать его в прямоугольную СК, для этого выполняем:
8. Добавляем вновь созданный shape-файл в проект.
9. Открываем атрибутивную таблицу.
10. Переводим слой в режим редактирования , при этом становится активной кнопка запуска калькулятора полей.
11. Запускаем калькулятор полей, нажав на кнопку . Открывается диалоговое окно калькулятора полей, состоящее из меню параметров создания новых полей, списка функций и подсказок по ним, а также результирующей командной строки (Expression) куда будут внесены все требуемые команды для вычислений.
Далее возможно два варианта действий, в зависимости от того, имеется ли у вас в атрибутивной таблице требуемое поле.
12. Создадим новое поле для записи результатов расчета площади. В случае, если в атрибутивной таблице файла еще нет специальных колонок для отображения информации о пространственных характеристиках, ставим галочку «Create new field» (Создать новое поле).
Зададим параметры поля для расчета площади:
14. Далее, необходимо выбрать необходимую расчетную функцию из списка. Все функции для расчета пространственных характеристик объектов находятся в группе «Геометрия». Добавить функцию в командную строку можно либо прописав ее вручную, либо двойным щелчком мыши по необходимой функции из списка.
15. После всех манипуляций окно должно приобрести вид:
16. Жмем «ОК» и смотрим на атрибутивную таблицу. В новой колонке «AREA» отображаются предварительные результаты расчетов (не усеченные до 1-го знака после запятой. Нажимаем кнопку «Сохранить изменения» . После этой операции данные записываются согласно настроенным нами параметрам поля: т.к. мы установили точность 1 знак после запятой, данные были округлены до 1-го знака после запятой. В случае, если результаты стали отрицательными, это означает, что недостаточно значащих знаков и нужно создать новое поле с большим количеством значащих знаков.
[править] Заключение
В заключение, сделаем важное замечание: правилом хорошего тона считается документирование, какое ПО (версия) и какой инструмент использовались для расчета пространственных характеристик объектов. Дело в том, что в разном ПО используются отличающиеся алгоритмы расчетов, параметры (точность назначения) СК и эллипсоидов, что приводит к тому, что для одних и тех же данных рассчитанные пространственные характеристики несколько отличаются. В научном мире приоритет отдается алгоритмам имеющим открытый исходный код, чтобы каждый мог воспроизвести расчеты и найти ошибки алгоритмов. В связи с этим QGIS как инструмент в руках ученого предстает в более выгодном свете.
При расчетах длин и площадей с использованием проекций необходимо также указывать, какие именно проекции использовались, особенно это касается расчетов в глобальном охвате, т.к. чем больше охват территории, тем больше разница в результатах расчетов выполненных в разных проекциях.
[править] Ссылки
[править] Примечания
Последнее обновление: 2014-05-14 21:52
Дата создания: 26.01.2012
Автор(ы): Илья Филиппов