szabó és wirth: adatmanipulációk - térinformatika szabadon
Post on 16-Feb-2017
38 Views
Preview:
TRANSCRIPT
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 / 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ó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.
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):
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 500600 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 QGISben 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 EOVra (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_eovt tartsukmeg közülük. Vegyük át az EOVt 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
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, EOVban.
Szelektáljuk ki újra (kézzel) a kalocsai lakott területet, és mentsük ezt is egy külön rétegre, EOVban.
Vektor statisztikák
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 11es é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
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 EOVban vagy WGS84ben 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:
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 2006os és 2012es é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
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 2006os 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 12es 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őtte a táj diverzitása a köztes 6 éves időszakban:
Landscape Metrics / Shannon index
Eredményül a 2006os állapotra 1.44et, a 2012es állapotra 1.47et 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
2016. 05. 02. Adatmanipuláció | GeoForAll
http://geoforall.hu/ch4.html 9/10
Mint a 4.9es á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 aBackspaceszel 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): UTF8 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 shapefiletól eltérő nyíltvektoros formátumba, azaz GeoJSONba (.gjson):
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
top related