3D-mallinnusta ja task:ien noudattamista

Neljäs kurssikerta toi mukanaan korkeusmallien analyysejä sekä hydrologista mallintamista. Kurssikerta koostui kahdesta hieman pidemmästä päätehtävästä ja yhdestä yli neljän tunnin (ainakin itseltäni se vaati taukoineen PALJON aikaa) bonustehtävästä, jossa opeteltiin tekemään Taskeja.

Ensimmäisessä tehtävässä oli tarkoitus selvittää potentiaalisten viinitarhojen paikat San Diegossa, Kaliforniassa. Kriteereinä oli: 1) yli 200m korkeudessa, 2) maankaltevuus 1,5-15% ja 3) alueen täyty ”paljastua” etelän suuntaan. Jotta nämä kriteerit saadaan yhdistettyä, ne täytyy ensiksi eritellä layereiksi.

Aluksi korkeusrasterista erotellaan kaltevuus Slope-toiminnolla, jolloin saadaan kuvan 1 mukainen uusi layer.

Kuva 1. Slope-toiminnolla aikaan saatu tulos.

Tämän jälkeen käytetään toimintoa Aspect, jotta saadaan haluttu ilmansuunnan mukainen kriteeri esiin. Myös ensimmäinen kriteeri (täytyy olla 200m korkeudessa) saadaan Elevation aineistosta käyttämällä Raster calculator. Toimintoon asetetaan ehdoksi, että Elevation > 200 ja samaiseen ehtoon lisätään myös kaltevuuden ehto ”sd_slope” => 1,5 ja sd_slope <= 15. Jotta saadaan viimeinen kriteeri täytettyä lisätään loppuun vielä etelään viittaavat luvut eli sd_aspect >= 112,4 ja sd_aspect <= 247,5. Näin saadaan kaikki alussa mainitut kriteerit toimintoon. Tulos on kuvan 2 mukainen, missä punaiset alueet täyttävät halutut kriteerit.

Kuva 2. La Mesan alueelta saadut optimaaliset alueet viinitarhoille.

Karttaan lisätään vinovalovarjostus sekä korkeuskäyrät, jotka ovat 2D-mallinnuksia, mutta vinovalovarjostus antaa 3D-vaikutelman, jossa esimerkiksi korkeammat mäet erottuvat selkeästi. Karttaan lisättiin myös Contour list, jonka kriteeriksi asetettiin haluttu ”yli 200m korkeudessa” (tässä tapauksessa 656 feet), jotta alueet erottuvat kartasta selkeästi. Karttaan lisättiin vielä korkeuskäyrät 100 metrin välein.

Tämän jälkeen tarkasteltiin vielä mahdollisia viewshed alueita (keltaisella), joista näkee vesialtaalle. Kuvassa 3 on lopullinen tulos.

Kuva 3. Tehtävän 1 lopputulos.

Lopputuloksen jälkeen kartan visualisointia tarkasteltiin vielä 3D-toiminnon avulla, joka näytti yhdestä kohdasta kuvan 4 mukaiselta. Mielestäni tämä oli koko tehtävin siistein osio, sillä itse tekemään karttaan pääsi ”sisälle” katsomaan millaisia korkeusvaihteluita sinne on muodostunut.

Kuva 4. Valmiin kartan 3D-näkymä.

Tehtävässä kaksi oli tarkoitus noudattaa ArcGis -ohjelmassa olevia Taskeja, jotka auttoivat tehtävän suorittamisessa. Itse jouduin noin puolessa välissä tehtävää jättämään taskit pois, sillä ohjelma kaatui ja sen myötä taskit jotenkin sekoittuivat, mutta sain hyvin seurattua ohjeita Esrin sivustolta. Tehtävässä oli monta kohtaa, joten tekstistä saattaa tulla pitkä, vaikka se onkin hyvin tiivistetty.

Ensiksi aineistossa haettiin virtaussuuntia, mistä saadaan hahmotelma siitä, mihin vesi mitä todennäköisemmin virtaisi eri alueilla. Tämän jälkeen uudesta layerista saadaan toiminnolla Sink alueen sisäiset salaojitukset, minkä jälkeen nämä saadaan pois Fill-toiminnolla.

Seuraavaksi määritellään valuma-alue, mitä varten tarvitaan 5 vaiheitta: 1) Flow direction –tool, 2) Flow accumulation –tool, mikä kertoo kumuloituvan virtauksen 3) Measure distance –toiminto, millä nähdään nykyisen outlet pointin ja joen etäisyys toisitaan (n. 60m), 4) Snap tour point –toiminto, jonka avulla saadaan 60m etäisyydeltä yhdistettyä solu, jolla on suurin kumulatiivinen virtauma, 5) Watershed –toiminto.

Seuraavaksi tarkastellaan virtauksen nopeutta, jotta kaupungilla on tarvittava aika valmistautua mahdollisiin tulviin. Ensiksi haetaan Slope-toiminnolla maankaltevuuksia, minkä jälkeen lasketaan slope ja flow accumulation yhteen Raster Calculator:in avulla. Hahmotelman välivaiheesta näkee kuvasta 5. Tämän jälkeen lasketaan Velocity field ja sen ominaisuuksia muokataan vastaamaan enemmän todellisuutta.

Kuva 5. Mustalla näkee Stowen kaupungin sisällä olevan valuma-alueen.

Edellisten tietojen lisäksi tarvitaan tieto maaston vastuksesta, jotta saadaan oikea tieto virtauksen pituudesta. Kun tämä on saatu selville jälleen Raster Calculator:in avulla, voidaan laskea virtauksen aika. Aloitetaan Flow Lenght –toiminnolla. Tämä luo jokaiseen soluun arvon sekunneissa, mikä kertoo kuinka kauan aikaa menee, kunnes vesi virtaa outlet pointiin. Reclassify tool:illa luokitellaan aineisto järkevämmäksi, jolloin 27 eri symbolia kutistuu vain yhdeksäksi (karttaa helpompi lukea), kuten kuvassa 6.

Kuva 6. Reclassify toiminnolla aikaan saatu kuvaus virtauksen ajasta.

Seuraavaksi aineistoa muokataan niin, että saadaan solujen data metreiksi, minkä lisäksi jokainen solu on kooltaan n. 30m x 30m, joten aineisto muokataan sopivaksi seuraavaa käyttöä varten, joka on tehdä aineistosta vielä kuvan 7 näköinen kuvaaja. Kuvaajassa on esitetty ajan ja outletpointiin kulkeutuvan sateen suhdetta (neliömetriä sekunnissa).

Kuva 7. Aineistosta johdettu kuvaaja.

BONUS

Tehtävänanto oli mielestäni hauska, sillä tarkoituksena oli auttaa etsintäpartiota jäljittämään kadonnutta henkilöä Merced Lake High Sierra Campissa. Tehtävän tarkoitus on opetella itse luomaan taskeja ArcGis Pro:ssa.

Aluksi jaettiin katoamisalueen polut kuudelle eri etsintätiimille, jonka jälkeen tarkoituksena oli tehdä uusia taskeja johtolangoille rakentamalla ensiksi työnkulkua.

En koe tärkeäksi kertoa tänne task:ien rakentamisesta vaihe vaiheelta, sillä tehtävä oli hyvin pitkä ja task:ien tekemisen vaiheet toistivat paljon itseään. Olennaista on ehkä kertoa, että tehtävässä tehtiin sekä uusia task:eja ja task:ien sisällä vaiheita (steps). Tehtävää oli kiva tehdä, sillä samalla kun task:eja rakensi niin teki itse tehtävää, jolloin mielenkiinto pysyi yllä.

Kuva 8. Tilannekuva välivaiheista, missä johtolangat näkyvät kartalla ympyröityinä numeroina.
Kuva 9. Joen ympärille on muodostettu buffer, sillä viimeisen johtolanka viittaa alueen olevan tärkeä etsinnöissä.

Tehtävän viimeisessä osassa, kun kadonnut henkilö oltiin löydetty, testattiin äsken luotuja task:eja erillisessä ArcGis projektissa. Lisäksi tehtävässä selviteltiin task:eihin mahdollisesti muodostuvia erroreita (kuva 10).

Kuva 10. Task:ien suorittamisessa esille nousevia erroreita.

Lisää rastereita!

Kolmas viikko lähti käyntiin vielä rasterien parissa. Nyt alkoi jo vähitellen tuntumaan siltä, että tehtävien tarkoitusta ymmärsi paremmin enkä vain toistanut tehtävien ohjeita orjamaisesti. Tämän viikon tehtävät pyörivät hyvin pitkälti modelbuilderin ympärillä.

Ensimmäisessän tehtävässä jatkettiin valkopäämerikotkien optimaalisten elinaluiden löytämistä. Tehtävä oli kaksiosainen, missä ensiksi tehtiin Suitability model ja käytetiin Raster Calculator – toimintoa modelbuilderissa. Tehtävä jatkui ja saatua mallia tarkasteltiin Sensitivity  ja Error  analyysien avulla. Kuvassa 1 nähdään erot punaisella.

Kuva 1. Kuvassa nähdään punaisella eroavat alueet.

Toisessa tehtävässä käytetiin Weighted Overlay –mallia, jossa eri rasterikartoille laskettiin eri painoarvot. Tarkoituksena on saada arvot skaalautumaan paremmaksi. Jotta alkuperäiset arvot saadaan muutettua, käytetään toimintoja Reclassify ja Rescale by function riippuen datan alkuperästä. Nämä toiminnot mahdollistavat useamman rasteriaineston yhdistämisen analysoinnissa.

Kuvista 2 ja 3 näkee, että erilaisia aineistoja on helppo käsitellä, kun niitä voi tarkastella samassa skaalassa ja näin esimerkiksi väreillä ei voi huijata, koska kaikissa on sama asteikko (1-10). Kuvissa on esitetty rakennetun ympäristön ja järvien läheisyyden kriteereitä käyttäen alueiden sopivuus.

Kuva 2. Alueen sopivuus rakennetun ympäristön mukaan.
Kuva 3. Alueen sopivuus järven läheisyyden mukaan.

Tehtävässä kolme käytetiin toimintoa Weighted Sum. Toiminto lisää valittujen rasteriaineistojen painotetut arvot yhteen. Kaikki neljä (järvet, metsäisyys, pinnanmuodot ja rakennettu ympäristö) rasteriaineistoa valitaan toimintoon ja lopputulokseksi saadaan kuvan 4 mukainen SuitabilitySurface.

Kuva 4. SuitabilitySurface malli.

Tämän jälkeen mallista etsittiin Error –toiminnon avulla mahdollisia virheitä, jotka saattaisivat vaikuttaa lopputulokseen. Jos erot ovat huomattavia, saadaan selville olisiko esimerkiksi toisenlaista dataa parempi käyttää analyysissa alunperin. Kuvat 4 ja 5 eivät eroa toisistaan huomattavasti, mistä voidaan päätellä, että rasteriaineistot, joita käytettiin, olivat tähän sopivia.

Kuva 5. SuitabilitySurfacesta johdettu Error_Surface malli.

BONUS

Tällä viikolla oli 3 pakollista ja 2 bonustehtävää, jotka päätin myös tehdä.

Ensimmäisessä bonustehtävässä jatketiin edelleen samaa aihetta ja tarkoituksena oli käyttää Locate Regions –toimintoa, joka lisättiin modelbuilderiin ja yhdistettiin rasteriaineistojen yhteiseen SuitabilitySurface layeriin. Kun tarkastellaan kuvaa 6, huomataan, että alueet, jotka saatiin toiminnon avulla karttaan täyttävät seuraavat kriteerit: 1) järvien läheisyydessä, 2) eivät ole rakennetussa ympäristössä ja 3) ne ovat kohtuullisen puuston alueella.

Kuva 6. Locate Regions -toiminnolla saadut alueet.

Toinen bonustehtävä oli jo mieluista tehtävää, sillä olin jo hieman kyllästynyt saman aihealueen ja aineston jankkaamiseen viime viikolta asti.

Alussa tarkoituksena oli tutkia kaasuvuotojen varalta kaasun tarkastuspisteitä ja niiden läheisyydessä olevia kouluja, joten näille tehtiin Buffer –toiminnolla bufferit modelbuilderissa, jonka jälkeen saatiin kuvan 7 näköinen tulos.

Kuva 7. Koulut sekä niiden lähellä olevat kaasujen tarkastuspisteet.

Tämän jälkeen tehtiin lyhyt harjoitus, jossa lisättiin Select by Attribute –toiminnon avulla joki näkyväksi kartalla, käyttämällä komentoa ”NAME is Equal to Cache La Poudre River”, joka oli aineistossa esiintyneen joen nimi.

Kuten jo alussa mainitsinkin, tällä viikolla tehtävät pyörivät pitkälti modelbuilderin parissa ja tässä tehtävässä rakenettiin pidempi malli, kuin mitä tähän mennessä on tehty. Kuvasta 8 voi nähdä mitä rasteriaineistolle tehtiin.

Kuva 8. Modelbuilderissa tehty malli.

Viimeisessä vaiheessa ajettiin malli ja saatiin visuaalinen näkemys siitä, mitä juuri oltiin rakennettu. Saatu tulos oli kuvan 9 mukainen.

Kuva 9. Lopputulos modelbuilderin Run -toiminnon jälkeen.

Viimeisen bonustehtävän jouduin tekemään täysin alusta, sillä tehtävä oli jäänyt kesken sillä välin, kun  tietokoneeni oli päättänyt aloittaa päivityksen ja uudelleenkäynnistämisen. Mutta tämähän vain tarkoitti vain lisäharjoitusta. Muuten tehtävät sujuivat jälleen mutkitta!

Rasterianalyysien kimppuun

Toinen viikko starttasi erilaisten rasterianalyysien kanssa. ArcGis meni jo paremmalla rutiinilla, eikä toimintoja tarvinnut enää etsiä yhtä kauan kuin viime viikolla.

Ensimmäisessä tehtävässä käytettiin biomassaa kuvaavaa NDVI (Normalized difference vegetation index) toimintoa, jotta pystyttiin analysoimaan vihreää kasvillisuutta. Metadatana oli kahdelta eri vuodelta sateliittikuva, joista erilaisten toimintojen avulla analysoitiin tapahtunutta muutosta.

Erot saatiin näkyviksi käyttämällä  aluksi Difference -toimintoa, joka antoi kuvan 1 näköisen tuloksen. Kuvaa luetaan niin, että harmailla alueilla ei ole tapahtunut muutosta, kun taas mustat ja valkoiset alueet kertovat muutoksesta.

Seuraavaksi Difference kuvalle täytyi tehdä Reclassify -toiminto, jotta rasteriaineiston arvoiksi saadaan joko 1 – muutos tai 0 – ei muutosta ja näin saadaan huomattavasti selkeämpi kuva muutoksesta.

Tämän jälkeen attribuuttitaulukon parametreihin luokiteltiin muutokselle arvo 1 ja väriksi punainen, jolloin saatiin kuvan 2 mukainen tulos.

Kuva 2. Vuoden 2013 ja 2015 välillä tapahtuneet muutokset kasvillisuudessa kuvattu punaisella.

Tehtävässä yksi käytetty Difference -toiminto oli erittäin kätevä näyttämään kahden eri ajankohdan välillä tapahtunutta muutosta. Voisin kuvitella sitä käytettävän myös esimerkiksi aavikoitumisen tutkimisessa.

Ensimmäisen tehtävän lopussa käytiin hieman läpi Function chainin tekemistä ja syvemmin siihen perehdyttiin tehtävässä 2. Tehtässä kaksi käytiin myös läpi sitä, miten ArcGisillä ratkaistavia spatiaalisia ongelmia kannattaa lähestyä ja mitä pitää ottaa huomioon. Varsinaista näytettävää minulla ei siitä ole.

Tehtävän kolme tarkoitus oli löytää potentiaalisia alueita valkopäämerikotkien habitaateista. Kriteereitä oli 4: tarpeeksi kaukana asutusta alueesta, ei liian tiheää tai väljää metsää, kahden mailin päässä järvestä ja koillisen suuntaisesti sijoittuvien aspektien mukaisesti.

Tehtävässä tarkoituksena oli tehdä Modelbuilderin avulla flow chart (kuva 3), jossa nähdään mitä metadatalle tehtiin, jotta saatiin kriteerien mukaiset tulokset.

Kuva 3. Tehtävässä Modelbuilderilla hahmoteltu flow chart.

Kun flow chart oli valmis se täytyi testata, eli >Validate > Run, jonka jälkeen saatiin kuvan 4 mukainen tulos.

Kuva 4. Tehtävässä kolme saatu lopputulos.

Tehtävässä 4 tehtiin samanlainen flow chart modelbuilderilla, tätä olisi kai voinut vain jatkaa edellisestä tehtävästä, mutta itse tein sen alusta saakka. T

Tehtävässä toistettiin sama kuin edellisessä eli >Validate > Run. Tulos oli hieman sekalainen ja tarkoituksena on ilmeisesti jatkaa seuraavalla viikolla tästä, joten varsinaista lopputulosta ei saatu. Tulosta pystyi toki selkeyttää sulkemalla muita layereita pois ja tarkastelemalla vain yhtä kerrallaan. Tässä esimerkkinä mitä saatiin, kun asetettiin vaatimuksiin, että kohteiden täytyy olla 1 mailin päässä järvestä.

Kuva 5. Alueet, jotka ovat yhden mailin etäisyydellä järvestä.

BONUSTEHTÄVÄ

Bonustehtävässä ei annettu heti vastauksia vaan annettiin ohjeet miten miettiä oikeanlaisia toimintoja. Tarkoituksena oli siis selvittää mitkä paloasemat ovat Wilsonin kaupungin eteläosassa sijoittuvat tietyille äänestysalueille. Ennakkoon tuli tietoa, että tehtävässä on bugi, joten se vaikutti lopputulokseen.

Karttaan lisättiin StudyArea, joka näkyy kartan eteläosassa neliönä, minkä jälkeen muutettiin Environmental settings. Spatial Join –toiminnolla saadaan vielä samaan layeriin äänestysalueet ja paloasemat, jolloin lopputulos (valitettavasti bugin kanssa) on kuvan 6 mukainen.

Kuva 6. Bonustehtävän lopputulos.

Tehtävässä oltaisiin voitu myös esimerkiksi etsiä äänestysalueelle olevia korkeakouluja, jolloin ehdokkaat olisivat voineet mennä kampanjoimaan kouluille ja hakemaan nuorten ääniä.

Takaisin GIS:in ääreen!

Tämä blogi toimii mainiona alustana tuleville raporteille Geoinformatiikan menetelmät 2 -kurssitehtävistä. Tällä viikolla saimme mahdollisuuden tutustua itselleni entuudestaan vieraisiin, mutta paljon puhuttuihin, ArcGis Online sekä ArcGis Pro -ohjelmiin.

Ensimmäinen tehtävä keskittyi lähinnä miten dataa ja karttoja käsitellään ArcGis Pro:ssa ja mistä löytää tarvittavia työkaluja. Näiden lisäksi käytetiin New Defenition Query –toimintoa, jonka avulla saatiin poistettua ylimääräiset rautatieasema symbolit, jolloin vain oikeat rautatieasemat jäivät näkyviin (kuva 1)

Kuva 1. Lähtötilanne ja lopputulos ”New Defenition Query”-toiminnon jälkeen.

Toisessa tehtävässä opeteltiin teoriassa erilaisten spatiaalisten suhteiden käyttötarkoituksia sekä tutkittiin attribuuttitaulukkoa. Päätin kokeilla ensimmäistä kertaa työvaihekaaviota (flow chart) tähän lyhyeen tehtävään, jossa käytettiin Select by features -toimintoa, jotta saatiin halutut alueet esiin kartasta.

Kuva 2. Flow chart tehtävän 2 työvaiheista.

Kolmannessa tehtävässä tarkoituksena oli kartoittaa Wilmingtonissa sijaitsevalle kuntosaliketjulle uuden kiinteistön potentiaalinen paikka. Tämä onnistui buffereiden avulla. Kuvassa 3 on tarkemmat menettelyt työvaihekaavion avulla.

Kuva 3. Tehtävän 3 pohjalta tehty flow chart.

Lopputulosta voitaisiin hyödyntää, esimerkiksi katsomalla Members datan attribuuttitaulukosta kaikki buffereiden ulkopuolelle jäävät asiakkaat ja hyödyntää heitä, esimerkiksi kyselyjen avulla, uuden salin sijainnin kartoittamisessa.

Tehtävä 4 oli muita tehtäviä jo selkeästi pidempi sekä haastavampi ja lisäksi sen suorittamisessa oli ilmennyt joitakin ongelmia jo ennen kuin pääsin sitä suorittamaan. Koska tehtävä oli sen verran pitkä ja työvaihekaavio sen verran uusi käsite, päädyin tässä  perinteisempään tapaan analysoida tehtävää.

Tehtävässä oli tarkoitus selvittää paikalliselle yritykselle, mihin heidän kannattaisi sijoittaa tehokkaammat tuuliturbiinit. Aluksi oli tärkeää, että kaikkea saatavilla olevaa dataa yhdisteltiin, jotta sitä pystyttäisiin käsitellä paremmin ja tarvittavia toimenpiteitä voitaisiin tehdä.

Kun alueelta oltiin kartoitettu siirtolinjat, joiden tuotto on yli 400 volttia ja näiden siirtolinjojen ympärille asetettu 10 mailin bufferit Buffer -toiminnolla ja näiden bufferoitujen alueiden sisältä kartoitettu jo olemassa olevien tuulifarmien sijainnit, joissa turbiinien siipien leveys on yli 100 metriä, saadaan kuvassa 4 näkyvä tulos.

Kuva 4. Kuvasta voidaan nähdä mahdolliset potentiaaliset tuulivoimalaitos alueet asiakkaalle.

Jotta tästä tilanteesta päästiin eteenpäin, täytyi ensiksi valita kaikki tähän asti hyödynnetty data ja yhdistää attribuuttitietoja spatiaalisiin tietoihin lisäämällä Build a query to find features – toimintoon kaikki tarvittavat tiedot, jotta optimaalisin alue löytyy.

Kuvassa 5 näkyvät alueet, jotka saatiin GIS:in avulla selville sekä niiden reitit Denveristä itse tuulifarmeille. Reitit saatiin Plan Routes -toiminnolla. Kartassa etelämmässä oleva kohde näyttäisi suotuisamalle lyhyemmän matkansa takia, mutta yritykselle jää vielä paljon pohdittavaa tavarankuljetuksen ja muun logistiikan kanssa siitä, mikä on järkevin valinta.

Kuva 5. Reitit Denveristä kahdelle tuulivoimafarmille.

Tehtävä 3 ja 4 tehdyt analyysit ovat yritys maailmassa hyvin tärkeitä nykypäivänä ja auttavat yrityksiä toimimaan kustannustehokkaasti säästämällä heiltä aikaa ja mahdollisia taloudellisia menetyksiä väärien olettamien pohjalta. Kuitenkin GIS:in avulla saadut tulokset eivät ole täysin valmiita ja käyttökelpoisia, vaan täytyy muistaa ottaa huomioon muitakin asioita.

Esimerkiksi tehtävässä 3 yrityksen täytyy ottaa huomioon, onko alueella, johon uusi kuntosali avattaisiin muita suuria kuntosaliyrityksiä tai onko alueen kiinteistöhinnat esimerkiski huomattavasti korkeammat kuin muualla ja voidaanko olettaa, että buffereiden ulkopuolelle jäävät asiakkaat eivät halua käyttää nykyisiä kuntosaleja esimerkiksi työpaikan sijainnin takia.