Forum QGIS
Siatka z procentowym udziałem zabudowy - Wersja do druku

+- Forum QGIS (http://forum.quantum-gis.pl)
+-- Dział: Desktop GIS (http://forum.quantum-gis.pl/forum-4.html)
+--- Dział: QGIS (http://forum.quantum-gis.pl/forum-5.html)
+--- Wątek: Siatka z procentowym udziałem zabudowy (/thread-855.html)



Siatka z procentowym udziałem zabudowy - basiuunia - 22-01-2013

witam,
czy i jak da się zrobić raster, na którym będzie uwzględniony procentowy udział zabudowy w siatce kwadratów np. 100m na 100m. Dysponuję wektorami z użytkowaniem terenu i nie wiem w sumie od czego by tu zacząć. Mam wyselekcjonowaną do osobnego pliku tylko zabudowę, ale co dalej?

Ktoś ma jakiś pomysł?


RE: Siatka z procentowym udziałem zabudowy - tomalos - 24-01-2013

Doświadczenia z rasteryzacją to nie mam, ale mam pomysł jak to zrobić na etapie wektorowym. Jeśli masz już siatkę (poligony 100x100m) na jednej warstwie i zabudowę (poligony nieregularne) na drugiej warstwie to:
1. Zrób agregację zabudowy (tak żeby mieć jeden multipoligon, nazwijmy to zab_agr).
2. Zrób iloczyn warstwy zab_agr i siatki (ilo-zab_agr_siatka)
3. Dla warstwy ilo-zab_agr_siatka wylicz w kalkulatorze powierzchnię, możesz to zrobić od razu tak, żeby wyszły procenty. Jak siatka ma 100x100m to sprawa jest prosta, tworząc nową kolumnę (real albo integer) wpisz w kalkulatorze wyrażenie: $area / 100.
4. Jak tworzyłaś siatkę w QGISie to ma ona kolumnę ID, taką samą kolumnę ma ilo-zab_agr_siatka odziedziczoną po warstwie siatka. Połącz te warstwy za pomocą kolumn ID (do siatki dołącz ilo-zab_agr_siatka).
5. Zapisz warstwę jako nowy nowy szejp, np. siatka_zab.
6. Na warstwie siatka_zab w kolumnie z powierzchnią (tej z warstwy ilo-zab_agr_siatka, kolumna pewnie po drodze zmieniła nazwę ze względu na to, że była zbyt długa) wybierz wszystkie obiekty, dla których nie ma żadnych wartości (tam nie ma zabudowy) i w kalkulatorze pół (zaptaszkowane "użyj tylko wybranych" i "aktualizuj istniejące pole") uzupełnij o wartość 0 (zero).
7. Teraz masz już siatkę z kolumną z procentowym udziałem zabudowy, możesz pousuwać zbędne kolumny bo po drodze trochę ich powstało. Wystarczy zrobić z tego raster Smile
Powodzenia.


RE: Siatka z procentowym udziałem zabudowy - nikivor - 26-08-2014

(24-01-2013, 10:01)tomalos napisał(a): Doświadczenia z rasteryzacją to nie mam, ale mam pomysł jak to zrobić na etapie wektorowym. Jeśli masz już siatkę (poligony 100x100m) na jednej warstwie i zabudowę (poligony nieregularne) na drugiej warstwie to:
1. Zrób agregację zabudowy (tak żeby mieć jeden multipoligon, nazwijmy to zab_agr).
2. Zrób iloczyn warstwy zab_agr i siatki (ilo-zab_agr_siatka)
3. Dla warstwy ilo-zab_agr_siatka wylicz w kalkulatorze powierzchnię, możesz to zrobić od razu tak, żeby wyszły procenty. Jak siatka ma 100x100m to sprawa jest prosta, tworząc nową kolumnę (real albo integer) wpisz w kalkulatorze wyrażenie: $area / 100.
4. Jak tworzyłaś siatkę w QGISie to ma ona kolumnę ID, taką samą kolumnę ma ilo-zab_agr_siatka odziedziczoną po warstwie siatka. Połącz te warstwy za pomocą kolumn ID (do siatki dołącz ilo-zab_agr_siatka).
5. Zapisz warstwę jako nowy nowy szejp, np. siatka_zab.
6. Na warstwie siatka_zab w kolumnie z powierzchnią (tej z warstwy ilo-zab_agr_siatka, kolumna pewnie po drodze zmieniła nazwę ze względu na to, że była zbyt długa) wybierz wszystkie obiekty, dla których nie ma żadnych wartości (tam nie ma zabudowy) i w kalkulatorze pół (zaptaszkowane "użyj tylko wybranych" i "aktualizuj istniejące pole") uzupełnij o wartość 0 (zero).
7. Teraz masz już siatkę z kolumną z procentowym udziałem zabudowy, możesz pousuwać zbędne kolumny bo po drodze trochę ich powstało. Wystarczy zrobić z tego raster Smile
Powodzenia.

Mam podobne zadanie. W moim przypadku chodzi o określenie z czego dokładnie składa się procentowo taki kwadrat (pola, lasy, zabudowa). Cała instrukcja wypisana w tym wątku wydaje się prosta nie rozumiem jednak punktu 4 i 6. W jaki sposób połączyć obiekty za pomocą kolumny ID ? W jaki sposób uzupełnić niektóre kolumny o wartość 0?