Как присвоить полигону среднее значение растрового слоя (grid)?

Вопросы по свободной ГИС QGIS. Сообщения об ошибках, предложения по улучшению, локализация.
Ответить
Артем Васильченко
Новоприбывший
Сообщения: 7
Зарегистрирован: 03 апр 2019, 08:11
Репутация: 3
Откуда: Москва

Как присвоить полигону среднее значение растрового слоя (grid)?

Сообщение Артем Васильченко » 20 ноя 2020, 10:15

Коллеги, здравствуйте!
Имеем настроенный проект QGIS с подгруженными grid поверхностью (из Surfer) и полигональными объектами.
Возможно ли в атрибут полигона записать среднее значение точек грида попадающих внутрь полигона?

Может быть нужно построить изолинии и уже через площади между изолиниями выходить на среднее значение внутри какого-то полигона? Но это как-то слишком.
А может легче это сделать средствами Surfer?

Прошу подсказать куда копать =)

Артем Васильченко
Новоприбывший
Сообщения: 7
Зарегистрирован: 03 апр 2019, 08:11
Репутация: 3
Откуда: Москва

Re: Как присвоить полигону среднее значение растрового слоя (grid)?

Сообщение Артем Васильченко » 20 ноя 2020, 11:17

Нашел решение.
Растр перегоняем в вектор (Растр - Преобразование - Создание полигонов (растр в вектор)...)
Идем в инструменты и выбираем "Присоединить атрибуты по пространственному положению (сводка)"
Исходный слой выбираем тот к которому нужно присоединить, а в связанный - недавно векторизованный растр из которого забираем атрибуты.
В полученном новом слое будут наши полигоны со всеми данными по атрибуту (от, до, среднее и т.д.).

Теперь остается понять насколько точен данный метод и зависят ли полученные значения от размеров присоединяемых полигонов, когда они частично выходят за пределы исходного?

Аватара пользователя
antonv
Активный участник
Сообщения: 229
Зарегистрирован: 29 ноя 2016, 10:44
Репутация: 114
Откуда: Санкт-Петербург

Re: Как присвоить полигону среднее значение растрового слоя (grid)?

Сообщение antonv » 20 ноя 2020, 14:12

Артем Васильченко, в QGIS это делается при помощи Zonal statistics plugin. Скармливаете ему полигональный векторный слой и растр, выбираете какую статистику считать. Если статистика нужна какая-то посложнее, которой нет в Zonal statistics, можете попробовать плагин LecoS, он умеет произвольные процентили считать, например. Правда, он довольно древний, не знаю, запустится ли он в третьем QGIS.

_taras_
Активный участник
Сообщения: 186
Зарегистрирован: 28 июл 2018, 08:40
Репутация: 12
Откуда: Киев

Re: Как присвоить полигону среднее значение растрового слоя (grid)?

Сообщение _taras_ » 20 ноя 2020, 15:27

LecoS запустится в третьем QGIS.

Артем Васильченко
Новоприбывший
Сообщения: 7
Зарегистрирован: 03 апр 2019, 08:11
Репутация: 3
Откуда: Москва

Re: Как присвоить полигону среднее значение растрового слоя (grid)?

Сообщение Артем Васильченко » 20 ноя 2020, 19:53

antonv писал(а):
20 ноя 2020, 14:12
в QGIS это делается при помощи Zonal statistics plugin
Спасибо за наводку, только в QGIS 3.16 это оказался не отдельный плагин, а встроенный инструмент в Растр-анализ.
Отработал он как надо. Главное что бы слои были в одной проекции, а то выдает ошибку.
_taras_ писал(а):
20 ноя 2020, 15:27
LecoS запустится в третьем QGIS
antonv писал(а):
20 ноя 2020, 14:12
можете попробовать плагин LecoS
А вот с ним, почему-то, совладать не получилось. Ругается на user projection, ладно перепроецировал в общеизвестную. Повтор. Опять ошибка "There is something wrong with your polygon layer. Try to save it to a new file."
Что с этим слоем не так, не понял.

_taras_
Активный участник
Сообщения: 186
Зарегистрирован: 28 июл 2018, 08:40
Репутация: 12
Откуда: Киев

Re: Как присвоить полигону среднее значение растрового слоя (grid)?

Сообщение _taras_ » 21 ноя 2020, 02:57

LecoS модуль древний и не развивается. Ему нужны библиотеки numpy и scipy для работы. При подвисании помогал перезапуск QGIS и открытие файлов по новой. А так же проверка на наличие русских (кириллических) букв в путях и ошибки в геометрии полигона.

Аватара пользователя
antonv
Активный участник
Сообщения: 229
Зарегистрирован: 29 ноя 2016, 10:44
Репутация: 114
Откуда: Санкт-Петербург

Re: Как присвоить полигону среднее значение растрового слоя (grid)?

Сообщение antonv » 21 ноя 2020, 19:26

Артем Васильченко, может, самопересечения или ещё какие ошибки геометрии?

Ответить

Вернуться в «QGIS»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 11 гостей