Страница 1 из 1
					
				Как присвоить полигону среднее значение растрового слоя (grid)?
				Добавлено: 20 ноя 2020, 10:15
				 Артем Васильченко
				Коллеги, здравствуйте!
Имеем настроенный проект QGIS с подгруженными grid поверхностью (из Surfer) и полигональными объектами.
Возможно ли в атрибут полигона записать среднее значение точек грида попадающих внутрь полигона?
Может быть нужно построить изолинии и уже через площади между изолиниями выходить на среднее значение внутри какого-то полигона? Но это как-то слишком. 
А может легче это сделать средствами Surfer? 
Прошу подсказать куда копать =)
			 
			
					
				Re: Как присвоить полигону среднее значение растрового слоя (grid)?
				Добавлено: 20 ноя 2020, 11:17
				 Артем Васильченко
				Нашел решение.
Растр перегоняем в вектор (Растр - Преобразование - Создание полигонов (растр в  вектор)...)
Идем в инструменты и выбираем "Присоединить атрибуты по пространственному положению (сводка)"
Исходный слой выбираем тот к которому нужно присоединить, а в связанный - недавно векторизованный растр из которого забираем атрибуты.
В полученном новом слое будут наши полигоны со всеми данными по атрибуту (от, до, среднее и т.д.).
Теперь остается понять насколько точен данный метод и зависят ли полученные значения от размеров присоединяемых полигонов, когда они частично выходят за пределы исходного?
			 
			
					
				Re: Как присвоить полигону среднее значение растрового слоя (grid)?
				Добавлено: 20 ноя 2020, 14:12
				 antonv
				Артем Васильченко, в QGIS это делается при помощи Zonal statistics plugin. Скармливаете ему полигональный векторный слой и растр, выбираете какую статистику считать. Если статистика нужна какая-то посложнее, которой нет в Zonal statistics, можете попробовать плагин LecoS, он умеет произвольные процентили считать, например. Правда, он довольно древний, не знаю, запустится ли он в третьем QGIS.
			 
			
					
				Re: Как присвоить полигону среднее значение растрового слоя (grid)?
				Добавлено: 20 ноя 2020, 15:27
				 _taras_
				LecoS запустится в третьем QGIS.
			 
			
					
				Re: Как присвоить полигону среднее значение растрового слоя (grid)?
				Добавлено: 20 ноя 2020, 19:53
				 Артем Васильченко
				antonv писал(а): ↑20 ноя 2020, 14:12в QGIS это делается при помощи Zonal statistics plugin
 
Спасибо за  наводку, только в QGIS 3.16 это оказался не отдельный плагин, а встроенный инструмент в Растр-анализ.
Отработал он как надо. Главное что бы слои были в одной проекции, а то выдает ошибку. 
_taras_ писал(а): ↑20 ноя 2020, 15:27LecoS запустится в третьем 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."
Что с этим слоем не так, не понял.
 
			
					
				Re: Как присвоить полигону среднее значение растрового слоя (grid)?
				Добавлено: 21 ноя 2020, 02:57
				 _taras_
				LecoS модуль древний и не развивается.  Ему нужны  библиотеки  numpy и scipy  для работы. При подвисании помогал перезапуск QGIS и открытие файлов по новой. А так же проверка на наличие русских (кириллических) букв в путях и ошибки в геометрии полигона.
			 
			
					
				Re: Как присвоить полигону среднее значение растрового слоя (grid)?
				Добавлено: 21 ноя 2020, 19:26
				 antonv
				Артем Васильченко, может, самопересечения или ещё какие ошибки геометрии?