ggmap Univerzitet u Novom Sadu April 2018 1. Učitavanje ggmap statičkih mapa Paket ggmap predstavlja skup funkcija za vizualizaciju prostornih podataka i modela sa brojem statičkih mapa sa Google Maps i Stamen Maps sajtova. Učitajte paket sa library() library("ggmap") ## Loading required package: ggplot2 NB: Komentari, poruke i obaveštenja u R-u su označeni sa # i ## Sa get_map() funkcijom R prevlači podatke za statičku mapu koju odaberete. Ova funkcija ima broj argumenata koji definišu tip mape i domen. U location argumentu se zadaju koordinate oko kojih će mapa biti centrirana. Sledeći argument, zoom uzima celobrojne vrednosti od 3 do 21 i kontroliše domen mape. Sa scale argumentom se podešava rezolucija mape i od toga zavisi vreme učitavanja mape. koordinate <- c( = 19.8336, = 45.2671) args(get_map) # pogleadjte argumente get_map funkcije ## function (location = c( = -95.3632715, = 29.7632836), ## zoom = "auto", scale = "auto", maptype = c("terrain", "terrain-background", ## "satellite", "roadmap", "hybrid", "toner", "watercolor", ## "terrain-labels", "terrain-lines", "toner-2010", "toner-2011", ## "toner-background", "toner-hybrid", "toner-labels", "toner-lines", ## "toner-lite"), source = c("google", "osm", "stamen", ## "cloudmade"), force = ifelse(source == "google", TRUE, ## TRUE), messaging = FALSE, urly = FALSE, filename = "ggmaptemp", ## crop = TRUE, color = c("color", "bw"), language = "en-en", ## api_key) ## NULL map_ns <- get_map(location = koordinate, zoom = 10, scale = 2) ## Map from URL : http://maps.googleapis.com/maps/api/staticmap?center=45.2671,19.8336&zoom=10&size=640x Nakon što ste skinuli mapu, možete da je prikažete u RStudio-u sa ggmap() funkcijom. ggmap(map_ns) 1
45.4 45.2 19.4 19.6 19.8 20.0 20.2 Probajte da menjate zoom (3-21) i vidite kako se menja domen slike. 2. Dodavanje novih lokacija na mapu Paket ggmap koristi ggplot paket koji pravi plotove spcifičnom slojevnom procedurom. Na statičku mapu ćemo dodati naše tačke sa geom_points() funkcijom. Fajl coordinates.xlsx ima četiri koe: (1) Geografska dužina, (2) Geografska širina, (3) Reivna promena srednje godišnje temperature za period 2001-2030 spram referentnog period 1971-2000 (4) Ime stanice. library("xlsx") # paket za citanje excel podataka ## Loading required package: rjava ## Loading required package: xlsxjars delt <- read.xlsx2(file = '/Users/mpetric/Documents/PROJECTS/UNS_RQGIS/01 - Data/coordinates.xlsx', sheetindex = 1, colclasses = c('numeric','numeric','numeric','character')) head(delt, 4) # pogledajte prva 4 reda ucitane tabele ## delat site ## 1 19.08 45.78 0.47 Sombor ## 2 20.47 45.85 0.43 Kikinda ## 3 19.22 44.55 0.49 Loznica ## 4 20.46 44.80 0.46 Beograd str(delt) # struktura tabele ## 'data.frame': 16 obs. of 4 variables: ## $ : num 19.1 20.5 19.2 20.5 20.9... 2
## ## ## $ : num 45.8 45.9 44.5 44.8 44... $ delat: num 0.47 0.43 0.49 0.46 0.55 0.53 0.69 0.58 0.58 0.61... $ site : Factor w/ 16 levels "Beograd","Cuprija",..: 13 4 8 1 5 12 9 16 11 6... geom_point(aes(, ), data = delt) ## Map from URL : http://maps.googleapis.com/maps/api/staticmap?center=45.2671,19.8336&zoom=6&size=640x6 47.5 42.5 16 20 24 3. Različiti načini prikazivanja intenziteta veličine U ovom delu ćemo videti kako da prikažemo vrednost reivne promene srednje godišnje temperature (delat) za koordinate koje smo učitali u prethodnoj vežbi. 3.1 Boja simbola # postavite kou delat kao faktor koji odredjuje boju sloja geom_point(aes(x =, y =, color = delat), data = delt) ## Map from URL : http://maps.googleapis.com/maps/api/staticmap?center=45.2671,19.8336&zoom=6&size=640x6 3
47.5 delat 0.7 0.6 0.5 42.5 16 20 24 3.2 Veličina simbola # postavite kou delat kao faktor koji odredjuje velicinu simbola sloja geom_point(aes(x =, y =, size = delat), data = delt) ## Map from URL : http://maps.googleapis.com/maps/api/staticmap?center=45.2671,19.8336&zoom=6&size=640x6 4
47.5 delat 0.5 0.6 0.7 42.5 16 20 24 A. Pregled koda: library("ggmap") library("xlsx") koordinate <- c( = 19.8336, = 45.2671) args(get_map) # pogleadjte argumente get_map funkcije map_ns <- get_map(location = koordinate, zoom = 10, scale = 2) ggmap(map_ns) delt <- read.xlsx2(file = '/Users/mpetric/Documents/PROJECTS/UNS_RQGIS/01 - Data/coordinates.xlsx', sheetindex = 1, colclasses = c('numeric','numeric','numeric','character')) head(delt, 4) # pogledajte prva 4 reda tabele str(delt) # struktura tabele geom_point(aes(, ), data = delt) # postavite kou delat kao faktor koji odredjuje boju sloja geom_point(aes(x =, y =, color = delat), data = delt) # postavite kou delat kao faktor koji odredjuje velicinu simbola sloja 5
geom_point(aes(x =, y =, size = delat), data = delt) 6