Доброго дня!
Как считать зональную статистику по растру и что это такое я понимаю. Если есть поле - можно посчитать показатели по полигонам (зонам).
А если есть вектор с дискретными классами (или растр из того же вектора) - как посчитать, какую площадь занимает каждый класс в зоне (полигоне)? Я что-то не нашел такого инструмента, а в excel считать при большом количестве полигонов все-таки долго.
Пример: полигональный вектор с типизацией землепользования (пашня, луг, село, лес) и вектор административных районов области -> таблица процента площади каждого типа землепользования в каждом районе.
Процент площади классов по зонам
- Jasen
- Активный участник
- Сообщения: 100
- Зарегистрирован: 27 янв 2006, 18:33
- Репутация: 4
- Ваше звание: Специалист
- Откуда: Москва
- Контактная информация:
Процент площади классов по зонам
Что написал - то написал!
-
- Гуру
- Сообщения: 5292
- Зарегистрирован: 09 апр 2010, 19:30
- Репутация: 1015
- Ваше звание: просто мимо прохожу
- Откуда: Ё-бург
Re: Процент площади классов по зонам
для этого придумали SQL
- Эдуард Казаков
- Гуру
- Сообщения: 546
- Зарегистрирован: 23 апр 2014, 17:11
- Репутация: 532
- Откуда: Planet Earth
- Контактная информация:
Re: Процент площади классов по зонам
В SAGA есть инструмент Points Statistics for polygons.
Можно провернуть такое - 1. Обрезать полигоны землепользования по полигонам областей (чтобы раздробить полигоны на границах) 2. посчитать площади полигонов землепользования в атрибуты, 3. потом сгенерировать центроиды для этих полигонов (они унаследуют поле с площадью), 4. затем использовать Points Statistics for polygons для этих центроидов и административных районов.
Это делается в QGIS в четыре кнопки.
Можно провернуть такое - 1. Обрезать полигоны землепользования по полигонам областей (чтобы раздробить полигоны на границах) 2. посчитать площади полигонов землепользования в атрибуты, 3. потом сгенерировать центроиды для этих полигонов (они унаследуют поле с площадью), 4. затем использовать Points Statistics for polygons для этих центроидов и административных районов.
Это делается в QGIS в четыре кнопки.
-
- Гуру
- Сообщения: 5292
- Зарегистрирован: 09 апр 2010, 19:30
- Репутация: 1015
- Ваше звание: просто мимо прохожу
- Откуда: Ё-бург
- Jasen
- Активный участник
- Сообщения: 100
- Зарегистрирован: 27 янв 2006, 18:33
- Репутация: 4
- Ваше звание: Специалист
- Откуда: Москва
- Контактная информация:
Re: Процент площади классов по зонам
Спасибо всем. SQL пока не очень получилось, никогда не пробовал использовать его для QGIS.
Так что обошёлся калькулятором полей:
"Ploshad" / attribute(get_feature( 'subbasins_barsuki_crct1','value', attribute( $currentfeature,'value')),'Area'),
где "Ploshad" - поле с площадями классов, 'subbasins_barsuki_crct1' - слой с зонами (районами), в котором 'value' имеют такие же значения что и в слое классов, 'Area' - площади в слое районов. Слой районов содержит уникальные значения районов с указанием площадей. В слое классов каждый объект содержит значение района, в пределах которого находится.
Результат - столбец долей площадей каждого класса в площади его района. Задача решена.
Предложение Эдуарда, возможно, имеет недостаток: мои полигоны имеют тип multifeature. Возможно, при генерировании центроидов, возникнут ошибки. Хотя, если у multifeature центроиды генерируются также как у обычных полигонов, то все в порядке.
Так что обошёлся калькулятором полей:
"Ploshad" / attribute(get_feature( 'subbasins_barsuki_crct1','value', attribute( $currentfeature,'value')),'Area'),
где "Ploshad" - поле с площадями классов, 'subbasins_barsuki_crct1' - слой с зонами (районами), в котором 'value' имеют такие же значения что и в слое классов, 'Area' - площади в слое районов. Слой районов содержит уникальные значения районов с указанием площадей. В слое классов каждый объект содержит значение района, в пределах которого находится.
Результат - столбец долей площадей каждого класса в площади его района. Задача решена.
Предложение Эдуарда, возможно, имеет недостаток: мои полигоны имеют тип multifeature. Возможно, при генерировании центроидов, возникнут ошибки. Хотя, если у multifeature центроиды генерируются также как у обычных полигонов, то все в порядке.
Что написал - то написал!
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 34 гостя