Presentation is loading. Please wait.

Presentation is loading. Please wait.

Www.nr.no RgoogleMaps Norsk statistikermøte, Halden, 11. juni 2013 André Teigland Forskningssjef SAMBA www.nr.no Elisabeth Orskaug Thordis Thorarinsdottir.

Similar presentations


Presentation on theme: "Www.nr.no RgoogleMaps Norsk statistikermøte, Halden, 11. juni 2013 André Teigland Forskningssjef SAMBA www.nr.no Elisabeth Orskaug Thordis Thorarinsdottir."— Presentation transcript:

1 www.nr.no RgoogleMaps Norsk statistikermøte, Halden, 11. juni 2013 André Teigland Forskningssjef SAMBA www.nr.no Elisabeth Orskaug Thordis Thorarinsdottir Norsk Regnesentral

2 RgoogleMaps ˃ Provide a comfortable R interface to query the Google server for static maps > Use the map as background image to overlay plots within R. 5. RgoogleMaps 2/20

3 Plot world map from google maps ˃ library(RgoogleMaps) > MyMap = GetMap(center=c(0,0), zoom =1, destfile = "World1.png ") Section 5.1 320 5. RgoogleMaps

4 Change the center You can change the center (lat, lon): ˃ MyMap = GetMap(center=c(59.95,10.7), zoom =1, destfile = "World2.png") Section 5.2 4/20 5. RgoogleMaps

5 Change the zoom variable You can zoom the map by changing "zoom": Section 5.3 5/20 MyMap = GetMap(center = c(59.95,10.7), zoom =10, destfile = "World3.png") MyMap = GetMap(center = c(59.95,10.7), zoom =13, destfile = "World4.png") 5. RgoogleMaps

6 Change the size You can change the size (pixels). (The default and maximum size is 640x640 pixels): Section 5.4 6/20 MyMap = GetMap(center=c(59.95,10.7), zoom =10, destfile = "World3Size200.png", size=c(200,200)) MyMap = GetMap(center=c(59.95,10.7), zoom =10, destfile = "World3Size500.png", size=c(500,500)) 5. RgoogleMaps

7 Choose the right maptype There are different maptypes to choose from: Section 5.5 maptype = "satellite"maptype = "roadmap"maptype = "terrain"maptype = "hybrid" 7/20 5. RgoogleMaps

8 Make a plot in grayscale You can make a plot in greyscale by adding GRAYSCALE=TRUE: ˃ GetMap(center=c(59.95,10.7), zoom =10, destfile = "OsloTerrainGRAYSCALE.png", maptype = "terrain", GRAYSCALE=TRUE) Section 5.6 8/20 5. RgoogleMaps

9 Make a map including several points #The function qbbox() basically computes a bounding box for the given lat, lon points (with a few additional options -> see ?qbbox) #We want to include the points (lat, lon) = (59.95, 10.7), (59.7, 10.3) and (59.3, 11.4). > bb = qbbox(c(59.95, 59.7, 59.3, 62),c(10.7,10.3, 11.4,11.4)) ˃ print(bb) #$latR #[1] 59.2865 62.0135 #$lonR #[1] 10.2945 11.4055 > MyMap = GetMap.bbox(bb$lonR, bb$latR,destfile = "OsloBig.png", maptype = "roadmap") Section 5.7 9/20 5. RgoogleMaps

10 Assignment ˃ Make a map that includes both Oslo (lat, lon) = (59.95, 10.7) and Kristiansand (lat, lon) = (58.13, 8.02). Section 5.8 10/20 5. RgoogleMaps

11 Suggestion > bb = qbbox(c(59.95, 58.13),c(10.7,8.02)) ˃ MyMap = GetMap.bbox(bb$lonR, bb$latR,destfile = "OsloKristiansand.png", maptype = "roadmap") 11/20 5. RgoogleMaps

12 Adding points and lines #Make plot on map: > bb = qbbox(c(59.95, 58.13),c(10.7,8.02)) ˃ MyMap = GetMap.bbox(bb$lonR, bb$latR,destfile = "OsloKristiansand.png", maptype = "roadmap") #Define the markers: > mymarkers = cbind.data.frame(lat = c(59.95, 58.13), lon = c(10.7,8.02)) #plot ˃ png("OsloKristiansandLine.png",640,640) #adding points > tmp = PlotOnStaticMap(MyMap,lat = mymarkers[,"lat"], lon = mymarkers[,"lon"], cex=2.5,pch=20,col=c("cyan", "brown1"), add=F) #adding line > tmp = PlotOnStaticMap(MyMap,lat = mymarkers[,"lat"], lon = mymarkers[,"lon"], col=c("blueviolet"), add=T, FUN = lines, lwd = 4) > dev.off() Section 5.9 12/20 5. RgoogleMaps

13 Example of plotting points > png("cosomapPoints.png") > data(cosomap) > bb = qbbox(lon=cosomap$POINTS$lon- 360,lat=cosomap$POINTS$lat) > MyMap = GetMap.bbox(bb$lonR, bb$latR,destfile = "Coso.png", maptype= "satellite",zoom=11) > tmp = PlotOnStaticMap(MyMap,lon=cosomap$POINTS$lon- 360,lat=cosomap$POINTS$lat, pch=20,cex =.5,col= "red", verbose=0) > dev.off() Section 5.10 13/20 5. RgoogleMaps

14 Add a square in a map Plot one square in a map over Norway. ˃ MyMap = GetMap.bbox(c(4.51,31.26), c(57.91,71.24), destfile= "Norway.png", GRAYSCALE=T, size=c(410,410), zoom=4) ˃ pdf("MapNorwayOneSquare.pdf") ˃ indNor = 600 #choose one grid out of 777. ˃ polys = data.frame(PID=rep(1,4),SID=rep(1,4),POS=1:4, X=c(coord.lon[indNor,1],coord.lon[indNor,4],coord.lon[indN or,3],coord.lon[indNor,2]), Y = c(coord.lat[indNor,1], coord.lat[indNor,4], coord.lat[indNor,3], coord.lat[indNor,2])) ˃ color1 = rainbow(20,alpha=0.8) #transparent color; the map is shown under the square. ˃ nr.color = 17 ˃ PlotPolysOnStaticMap(MyMap, polys, lwd=.5, col=color1[nr.color], add = F) ˃ graphics.off() Section 5.11 14/20 5. RgoogleMaps

15 Add border of counties Map over Norway adding border of counties. > PlotPolysOnStaticMap(MyMap, shp[ind[1]:ind2[1],], col=0, lwd=.5, add = F,verbose=.5) > for(i in 2:length(ind)){ > PlotPolysOnStaticMap(MyMap, shp[ind[i]:ind2[i],], col=0, lwd=.5, add = T,verbose=.5) > } Section 5.12 15/20 5. RgoogleMaps

16 Add squares and border of counties Plot squares that covers Norway and add border of counties. ˃ PlotPolysOnStaticMap(MyMap, shp[ind[1]:ind2[1],], col=0, lwd=.5, add = F,verbose=.5) ˃ for(i in 2:length(ind)){ ˃ PlotPolysOnStaticMap(MyMap, shp[ind[i]:ind2[i],], col=0, lwd=.5, add = T,verbose=.5) ˃ } ˃ for(indNor in 1:nrow(index.norway)){ ˃ polys=data.frame(PID=rep(1,4),SID=rep(1,4),POS=1:4, X=c(coord.lon[indNor,1],coord.lon[indNor,4],coord.lon[indNor,3],coord.lon[indNor,2]), Y = c(coord.lat[indNor,1],coord.lat[indNor,4],coord.lat[indNor,3],coord.lat[i ndNor,2])) ˃ color1 = rainbow(20,alpha=0.2) ˃ nr.color = 10 ˃ PlotPolysOnStaticMap(MyMap, polys, lwd=.5, col=color1[nr.color], add = T) ˃ } Section 5.13 16/20 5. RgoogleMaps

17 Add squares and border of counties maptype = hybrid Section 5.14 17/20 5. RgoogleMaps

18 Assignment > Add grids covering only Finnmark (the county longest North) on the map "Norway.png". Section 5.15 18/20 5. RgoogleMaps

19 Suggestion ˃ pdf("MapFinnmark.pdf") ˃ … ˃ for(indNor in c(633,639:nrow(index.norway))){ ˃ … ˃ } ˃ graphics.off() 19/20 5. RgoogleMaps

20 www.nr.no André Teigland Forskningssjef SAMBA www.nr.no Short break


Download ppt "Www.nr.no RgoogleMaps Norsk statistikermøte, Halden, 11. juni 2013 André Teigland Forskningssjef SAMBA www.nr.no Elisabeth Orskaug Thordis Thorarinsdottir."

Similar presentations


Ads by Google