10
2016. 05. 02. Adatmanipuláció | GeoForAll http://geoforall.hu/ch4.html 1/10 Térinformatika szabadon Szabó György és Wirth Ervin 4. Fejezet: Adatmanipulációk Töltsük le az Adminisztratív határok (files/adm_hun.zip), Utak (files/roads.zip) és Földhasználat (files/landuse.zip) rétegeket. Töltsük be az Adminisztratív határokat a QGIS projektünkbe. A hun_adm0 – Magyarországot jelenti; a hun_adm1 – a megye szintű határokat jelenti; a hun_adm2 – a járások jelenti. Ez utóbbi réteget tegyük legfelülre a megjelenítése sorban, így az eltakarja a többit (alá célszerű a megyéket helyezni). Címkézzük meg a járásokat a neveikkel (NAME_2) (1. Fejezet, Vektor adatmodell), majd zoomoljunk a Kalocsai járásra: 4.1. ábra: Felül: Járás réteg (30% átlátszósággal), alatta: Megye réteg (Véletlen színekkel neveik alapján) Ha hibásan jelennek meg az ékezetek, akkor próbálkozzunk a karakterkódolás átállításával a réteg tulajdonságoknál: Réteg / Tulajdonságok / Általános / Karakter kódolás / UTF8 Layer / Properties / General / Data source encoding / UTF8 Töltsük be az Utak és Földhasználat rétegeket, ezen rétegek az OpenStreetMap téradatbázisából lettek levezetve. Az OpenStreetMap (OSM) közösségi térképfejlesztés, melynek célja egy szabadon szerkeszthető és felhasználható térkép készítése az egész világról. A térképek hordozható GNSS eszközökből, légifotókból, szabadon használható, nemzeti kormányzati nyilvántartásokból és egyéb szabad forrásokból származó adatok, vagy egyszerű helyismeret alapján készültek. A térinformatikai adatbázis teljes tartalma Open Database License licenc alatt érhető el letöltésre.

Szabó és Wirth: Adatmanipulációk - Térinformatika szabadon

Embed Size (px)

Citation preview

Page 1: Szabó és Wirth: Adatmanipulációk - Térinformatika szabadon

2016. 05. 02. Adatmanipuláció | GeoForAll

http://geoforall.hu/ch4.html 1/10

Térinformatika szabadonSzabó György és Wirth Ervin

4. Fejezet: AdatmanipulációkTöltsük le az Adminisztratív határok (files/adm_hun.zip), Utak (files/roads.zip) és Földhasználat(files/landuse.zip) rétegeket. Töltsük be az Adminisztratív határokat a QGIS projektünkbe. Ahun_adm0 – Magyarországot jelenti; a hun_adm1 – a megye szintű határokat jelenti; a hun_adm2– a járások jelenti. Ez utóbbi réteget tegyük legfelülre a megjelenítése sorban, így az eltakarja atöbbit (alá célszerű a megyéket helyezni). Címkézzük meg a járásokat a neveikkel (NAME_2) (1.Fejezet, Vektor adatmodell), majd zoomoljunk a Kalocsai járásra:

4.1. ábra: Felül: Járás réteg (30% átlátszósággal), alatta: Megye réteg (Véletlen színekkel neveik alapján)

Ha hibásan jelennek meg az ékezetek, akkor próbálkozzunk a karakterkódolás átállításával a rétegtulajdonságoknál:

Réteg / Tulajdonságok / Általános / Karakter kódolás / UTF­8 Layer / Properties / General / Data source encoding / UTF­8

Töltsük be az Utak és Földhasználat rétegeket, ezen rétegek az OpenStreetMap téradatbázisábóllettek levezetve.

Az OpenStreetMap (OSM) közösségi térképfejlesztés, melynek célja egy szabadon szerkeszthető ésfelhasználható térkép készítése az egész világról. A térképek hordozható GNSS eszközökből,légifotókból, szabadon használható, nemzeti kormányzati nyilvántartásokból és egyéb szabadforrásokból származó adatok, vagy egyszerű helyismeret alapján készültek. A térinformatikaiadatbázis teljes tartalma Open Database License licenc alatt érhető el letöltésre.

Page 2: Szabó és Wirth: Adatmanipulációk - Térinformatika szabadon

2016. 05. 02. Adatmanipuláció | GeoForAll

http://geoforall.hu/ch4.html 2/10

4.2. ábra: Kalocsa, földhasználat (címkézve és színezve típus alapján) és út rétegekkel.

SzelekcióTegyük aktívvá a a földhasználat (landuse) réteget a palettán, majd jelöljük ki (1. Fejezet, Fontosikonok) Kalocsa összefüggő lakott területét ­ barnás rész. A kijelölés sikerét a sárga (alapbeállítás)szín jelzi:

Nézet / Szelektálás / Elem szelektálás View / Select / Select Feature(s)

Majd aktiváljuk az utak (roads) réteget, és szelektáljuk ki poligonnal a kalocsai utakat (tegyünk lekörbe pontokat, majd nyomjunk jobb egérgombot):

Nézet / Szelektálás / Elemek szelektálása poligonnal View / Selection / Select Features by Polygon

4.3. ábra: Szelektálás poligonnal.

Térbeli lekérdezésEzt követően szelektáljuk ki azokat az utakat, amelyek a lakott területbe esnek. Ehhez indítsuk el aTérbeli lekérdezés (Spatial Query) alap modult (ha nem találjuk, ikszeljük be a moduloktelepítésénél):

Page 3: Szabó és Wirth: Adatmanipulációk - Térinformatika szabadon

2016. 05. 02. Adatmanipuláció | GeoForAll

http://geoforall.hu/ch4.html 3/10

Vektor / Térbeli lekérdezés / Térbeli lekérdezés (Vector / Spatial query / Spatial query)   Forrás elemek (Select source features from): roads   500­600 szelektált geometria (Selected geometries) ­ beikszelve   Ahol az elemek (Where the feature): Beleesik (Within)   Referencia elemek (Reference features of): landuse   1 szelektált geometria (Selected geometries) ­ beikszelve   Új szelekció létrehozása (Create new selection)     Alkalmaz (Apply)

Győződjünk meg a kijelölés helyességéről, kapcsoljuk ki a földhasználat réteget egy pillanatra.

Mint említettük a QGIS­ben minden rétegnek saját vonatkozási rendszere van, térinformatikaimunkáink során szükséges lehet az áttérés a magyar vetületre, az EOV­ra (Egységes OrszágosVetület); melynek kódja az EPSG:23700. Az áttérés oka lehet például a hosszegységben kifejezettfeltételek teljesítése pl. „Azok az éttermek érdekelnek, amelyek a főút 300 méteres övezetébe esnek.

Ezt követően bezárhatjuk a lekérdező ablakot, majd mentsük a szelekciónkat egy új rétegbe.Ugyanis a szelekció csak egy ideiglenes réteg, nincs mögötte fizikai fájl ­ a szoftver bezárása eseténelveszítjük. Jobb klikk a réteg paletta útszelekcióján (roads_selected), majd Mentés másként,vagy:

Réteg / Mentés másként (Layer / Save as)  Adjunk neki nevet pl. roads_kalocsa_eov  CRS: EPSG:23700 HD72/EOV  Kódolás (Encoding): System  Mentett fájl hozzáadása térképhez (Add saved file to map)

Eddig a rétegeink a WGS84 vonatkozási rendszerben voltak, aminek fok a mértékegysége. Haezekből a földrajzi koordinátákból (szélesség, hosszúság) számítanánk távolságokat,területeket, akkor ezek helytelenül fokban képződnének. Megjegyezzük lehetséges ezenmérőszámok földrajzi koordinátákból számítása, csak komplokált és számos plusz interakciótigényel.

A réteg tulajdonságoknál történő CRS (vonatkozási rendszer) csere nem számítja át akoordinátákat.

Távolítsuk el az eredeti Utak réteget, és a szelekció réteget ­ csak a roads_kalocsa_eov­t tartsukmeg közülük. Vegyük át az EOV­t projekt vetületi rendszernek az új rétegünkből:

Réteg / Projekt vetület a rétegből Layer / Set Project CRS from layer

Page 4: Szabó és Wirth: Adatmanipulációk - Térinformatika szabadon

2016. 05. 02. Adatmanipuláció | GeoForAll

http://geoforall.hu/ch4.html 4/10

Tüntessük fel az utcák neveit (Címke:NAME):

4.4. ábra: Kalocsa utcanevekkel részlet.

Mentsük a lakott területet is egy önálló rétegbe:

Réteg / Mentés másként (Layer / Save as)  Adjunk neki nevet pl. residential_kalocsa_eov  CRS: EPSG:23700 HD72/EOV  Kódolás (Encoding): System  Csak a szelektált elemek mentése (Save only selected features)  Mentett fájl hozzáadása térképhez (Add saved file to map)

Szünetessük meg a szelekciót valamennyi rétegen (akár ikonnal ­ lásd Fontos ikonok):

Nézet / Szelektálás / Szelekció megszüntetése View / Selection / Deselect features from All layers

Attribútum lekérdezésLekérdezéseinknek nem csak térbeli, hanem tematikus vonzata is lehet. Ilyen jellegű érdeklődésünkkielégítésére szolgálnak az attribútum – azaz leíró adat – lekérdezések. Például válogassuk le abicikliutakat Kalocsa lakott területén. Ehhez először aktiváljuk a réteget, majd:

Nézet / Szelektálás / Szelekció kifejezéssel View / Selection / Select by Expression

Adjuk meg a következő kifejezést:

"type" = 'cycleway'

A panelen használjuk a Mezők és értékek legördülő menüt.

Mentsük az elemeket szintén egy külön rétegre, EOV­ban.

Szelektáljuk ki újra (kézzel) a kalocsai lakott területet, és mentsük ezt is egy külön rétegre, EOV­ban.

Vektor statisztikák

Page 5: Szabó és Wirth: Adatmanipulációk - Térinformatika szabadon

2016. 05. 02. Adatmanipuláció | GeoForAll

http://geoforall.hu/ch4.html 5/10

A térinformatika eszköztárával könnyedén számíthatunk mérőszámokat, indikátorokat bármilyenföldrajzi egységre. Ebben a fejezetben egy a bicikliutak mennyiségét kifejező indikátort vezetünk le,mely akkor volna igazán hasznos, ha azt több településen is hasonlóképp kiszámolnánk. Tehát a'Biciklizettség' indikátort a következőképp számítjuk:

Bicikliutak hossza [m] / Lakóövezet mérete [ha]

Így az indikátorunk azt árulja el, hogy 1 hektárra hány méter bicikliút jut. Megjegyezzük az adatnormalizált, ezt a területi leosztással garantáltuk. A lakóövezet (residential) területe helyetthasználhatnánk akár a település népességét.

Először számítsuk ki a lakott területre eső bicikliutak hosszát:

Vektor / Elemző eszközök / Összes Vonalhossz (Vector / Analysis Tools / Sum linelengths)  Input felület vektor réteg (Input polygon vector layer):residential_kalocsa_eov  Input vonal vektor réteg (Input line vector layer):cycleway_kalocsa_eov  Output összegzett hossz mező neve (Output summed length field name):HOSSZ

A kapott réteg attribútum táblájában megtekinthetjük az összegzett hosszt: 6393.40 m

Majd a felület területét kiszámolhatnánk a korábbi fejezetben (Transzformációk, Vetületek)bemutatott módszerrel; de most tegyük ezt másképp, nyissuk meg a mező kalkulátort (abakuszikon), és használjuk az $area függvényt:

Attribútum tábla megnyitása (Open Attribute Table)   Mező kalkulátor (Field Calculator)    Új mező létrehozása (Create new field)     Mező neve (Output field name): indikator     Mező típus (Output field type): Egész szám (Whole number)     Kifejezés (Expression): "HOSSZ" / ($area /10000) Szerkesztés kikapcsolása (Toggle Editing)

Végül a 'Biciklizettség' indikátorra 11­es értéket kaptunk, azaz 1 ha lakóövezetre átlagosan 11 méterbicikliút jut.

Telepítsük fel a Group Stats plugint, készítsünk egy statisztikát az utak eloszlásáról:

Vektor / Group Stats (Vector / Group Stats)  Layers: roads_kalocsa_eov  Columns: type  Rows: sum  Value: Length   Calculate

Page 6: Szabó és Wirth: Adatmanipulációk - Térinformatika szabadon

2016. 05. 02. Adatmanipuláció | GeoForAll

http://geoforall.hu/ch4.html 6/10

4.5. ábra: Az egy úttípusok hossza a kalocsai lakóövezetben.

Végül töltsük le az Érdekes helyek (files/points.zip) (POI: Points of Interest) réteget, betöltés után aTérbeli lekérdezés segítségével szelektáljuk ki belőle azokat az elemeket, amelyek a kalocsai járásbanvannak. Ugyanígy járjunk el a lakóövezetekkel (landuse = residential) és a Települések (places)réteggel. Tehát csak Kalocsa járásbeli elemeink legyenek.

Ebben az esetben mindegy, hogy EOV­ban vagy WGS84­ben dolgozunk, csak valamennyiréteg rendszere azonos legyen.

4.6. ábra: Alapadatok az elemzéshez, Település pontok (névvel megírva), lakott területek, érdekes helyek.

Mivel a lakott terület réteg nem tartalmazza a települések neveit, ezért először ezt egyösszekapcsolással kell megoldanunk a Települések (places) réteggel:

Vektor / Adatkezelő eszközök / Attribútumok kapcsolása hely alapján (Vector / DataManagement Tools / Join Attributes by location)  Cél vektor réteg (Target vector layer): residential_kalocsa  Vektor réteg összekapcsolása (Join vector layer): places_kalocsa

Ezt követően már akár a felületeket is feliratozhatjuk:

Page 7: Szabó és Wirth: Adatmanipulációk - Térinformatika szabadon

2016. 05. 02. Adatmanipuláció | GeoForAll

http://geoforall.hu/ch4.html 7/10

4.7. ábra: Lakott övezetek, neveikkel (Kalocsa járásban).

Végül számítsuk ki, az egyes lakott övezetekbe hány érdekes hely esik:

Vektor / Elemző eszközök / Pontok a felületben (Vector / Analysis Tools / Points inPolygon)  Input felület vektor réteg (Input polygon vector layer): residential_joined  Input pont vektor réteg (Input point vector layer): point_kalocsa

4.8. ábra: Mint látható Dunapataj lakott területére 65 érdekes hely esett.

Érdekes pontjainkat akár tematikusan is felbonthatjuk, és különféle diagramokat (pl. tortadiagram)készíthetünk a településekre.

Raszter statisztikaKezdjünk egy új projektet és adjuk hozzá újra a járási adminisztratív határokat, valamint aFelszínborítások (files/clc_series_hun.zip) közül a 2006­os és 2012­es évit. Jelöljük ki a Kalocsaijárást, és mentsük át a szelekciót a raszterrel megegyező vetületbe (EPSG:3035). Vágjuk ki araszterből a járásnak megfelelő részt:

Raszter / Kivonat / Vágó (Raster / Extraction / Clipper)  Input raszter (Input file): clc2012_hun  Eredmény fájl (Output file): 2012_kalocsa  Maszk réteg (Mask layer): kalocsa_jaras_laea

Page 8: Szabó és Wirth: Adatmanipulációk - Térinformatika szabadon

2016. 05. 02. Adatmanipuláció | GeoForAll

http://geoforall.hu/ch4.html 8/10

A vágás sikerességéhez szükséges a vágandó és vágó rétegeknek azonos vonatkozásirendszerben lenniük.

Készítsük el a vágást a 2006­os rétegre is. Majd telepítsük a LecoS ­ Landscape Ecology Statisticsplugint, és készítsünk elemzéseket:

Raszter (Raster) / Landscape Ecology / Landscape statistics

Számítsuk ki a szántok arányát a járásban:

Calculate Metrics / Land Cover

A szántóhoz a 12­es kód tartozik, amelyhez a 714 690 000 érték párosul. Ez az értéknégyzetméterben értendő, azaz 714,69 km területet jelent. A WikiPédia alapján a Kalocsai járásterülete 1062,27 km , tehát a járás 67 %­a szántó. Kiszámolhatnánk ezt az arányszámot másjárásokra, más időpontokra, akár egy táblázatban összefoglalva.

Számítsuk ki, vajon nőtt­e a táj diverzitása a köztes ­ 6 éves ­ időszakban:

Landscape Metrics / Shannon index

Eredményül a 2006­os állapotra 1.44­et, a 2012­es állapotra 1.47­et kaptunk. Azaz Kalocsajárásban – a raszter adatmodellek alapján – az EU Greening direktívának megfelelően nőtt adiverzitás.

SzerkesztésTérjünk vissza Kalocsa lakott területére, töltsük be az Épületek (files/buildings.zip) (buildings)réteget, illetve egy Bing Aerial webes réteget (1. Fejezet, Webes téradatok fejezet).

4.9. ábra: Vektoros épületek (40%­os átlátszóság), Bing Aerial webes alaptérkép, Kalocsa.

2

2

Page 9: Szabó és Wirth: Adatmanipulációk - Térinformatika szabadon

2016. 05. 02. Adatmanipuláció | GeoForAll

http://geoforall.hu/ch4.html 9/10

Mint a 4.9­es ábrán látható, nagyon kevés épület került digitalizálásra. Szerkesszünk fel magunk isnéhányat egy új rétegbe, de előtte néhány szerkesztési tipp:

Több pontból álló vonalak, felületek szerkesztésekor véletlenül hibásan felvett töréspontot aBackspace­szel törölhetjük.Az egyes elemek szerkesztését az egér Jobb gombjával is lezárhatjuk.Szerkesztés közben a görgő lenyomásával navigálhatunk a térképen.

A házak szerkesztésénél a réteg létrehozásakor vegyünk fel néhány fiktív attribútumot is, pl.Tulajdonos neve – attribútumok felvételére az Új attribútum mezőnél van lehetőség:

Réteg / Réteg létrehozás / Új shape fájl réteg (Layer / Create layer / New shapefile layer) Típus (Type): Felület (Polygon)  Fájl kódolás (File encoding): UTF­8  CRS: ESPG:23700 HD72/EOV  Új attribútum (New attribute)   Név (Name): Tulajdonos   Típus (Type): Szöveges adat (Text data)   Új attribútum (Add to attributes list)

A szerkesztés megkezdése előtt tekintsük meg az I. Fejezet, Fontos ikonok részt a vonatkozó ikonokmemorizálásához. A szerkesztés rövid menete:

1. Réteg / Szerkesztés be/ki2. Szerkeszt / Elem hozzáadás3. A szerkesztés végén: Réteg / Réteg módosításainak mentése4. Réteg / Szerkesztés be/ki

Mindig lépjünk ki a szerkesztésből, ezt a réteg palettán lévő ceruza ikon eltűnése jelzi.

4.10. ábra: Két digitalizált épület, fiktív tulajdonos adattal címkézve.

Néhány épület megszerkesztése után mentsük át a rétegünket egy a shapefile­tól eltérő nyíltvektoros formátumba, azaz GeoJSON­ba (.gjson):

Page 10: Szabó és Wirth: Adatmanipulációk - Térinformatika szabadon

2016. 05. 02. Adatmanipuláció | GeoForAll

http://geoforall.hu/ch4.html 10/10

Mentés másként (Save as)  Formátum (Format): GeoJSON

Tekintsünk bele valamilyen nézegetővel a fájlba:

4.11. ábra: Két ház vektoros leírása GeoJSON vektoros formátumban.

A 4.11. ábrából kiolvasható a vetületi rendszer azonosítója, illetve a koordináták jól ismert EOVértékei, valamint a leíró adatok, geometria típusa.

Hivatkozások