## ----pkg-load, echo = FALSE, message = FALSE---------------------------------- library (mapscanner) library (ggplot2) requireNamespace ("sf") # vwidth/height are passed via mapview::mapshot to webshot::webshot, # and default to (992,744), which bloats package size (issue #27). red <- 2 vwidth <- 992 / red vheight <- 744 / red ## ----generate-fakey, eval = FALSE--------------------------------------------- # ms_generate_map ("chennai india", mapname = "chennai") ## ----generate, echo = FALSE--------------------------------------------------- message ("Successfully generated 'chennai.pdf' and 'chennai.png'") ## ----chennaiBrick-fakey, eval = FALSE----------------------------------------- # x <- ms_generate_map ("chennai india", mapname = "chennai") ## ----echo = FALSE------------------------------------------------------------- message ("Successfully generated 'chennai.pdf' and 'chennai.png'") ## ----x, eval = FALSE---------------------------------------------------------- # x ## ----chennaiBrick, echo = FALSE----------------------------------------------- x <- paste0 ( "class : RasterBrick\n", "dimensions : 1147, 562, 644614, 3 (nrow, ncol, ncell, nlayers)\n", "resolution : 38.21851, 38.21851 (x, y)\n", "extent : 8921157, 8942635, 1442787, 1486624 (xmin, xmax, ymin, ymax)\n", "crs : +proj=merc +a=6378137 +b=6378137 +lat_ts=0 +lon_0=0 +x_0=0 +y_0=0 +k=1 +units=m +nadgrids=@null +wktext +no_defs\n", "source : memory\n", "names : index_1.1, index_1.2, index_1.3\n", "min values : 107, 107, 107\n", "max values : 254, 254, 254" ) message (x) ## ----chennaiBrick2, eval = FALSE---------------------------------------------- # ms_generate_map (raster_brick = x, mapname = "chennai") ## ----omaha-poly-png, echo = FALSE, out.width = "75%", eval = TRUE------------- op <- system.file ("extdata", "omaha-polygons.png", package = "mapscanner") f <- file.path (tempdir (), "omama-polygons.png") chk <- file.copy (op, f) knitr::include_graphics (f) ## ----rectify, message = FALSE, eval = FALSE----------------------------------- # f_orig <- system.file ("extdata", "omaha.png", package = "mapscanner") # f_mod <- system.file ("extdata", "omaha-polygons.png", package = "mapscanner") # xy <- ms_rectify_map (f_orig, f_mod, nitems = 2) # xy ## ----rectify-output, echo = FALSE--------------------------------------------- m <- c ( "Simple feature collection with 2 features and 0 fields", "Geometry type: POLYGON", "Dimension: XY", "Bounding box: xmin: -96.11801 ymin: 41.26638 xmax: -96.02722 ymax: 41.30108", "Geodetic CRS: WGS 84", " geometry", "1 POLYGON ((-96.10692 41.2684...", "2 POLYGON ((-96.0276 41.2964,..." ) m <- paste0 (m, collapse = "\n") message (m) ## ----mapshot-hulls, eval = FALSE, echo = FALSE-------------------------------- # xy$id <- seq_len (nrow (xy)) # if (!file.exists ("mapshot-polys.png")) { # x <- mapview::mapview (xy) # mapview::mapshot (x, # file = "mapshot-hulls.png", # remove_controls = c ("layersControl", "zoomControl"), # vwidth = vwidth, vheight = vheight # ) # } ## ----mapview-fakey, eval = FALSE---------------------------------------------- # xy$id <- seq_len (nrow (xy)) # mapview::mapview (xy) ## ----mapshot-hulls-png, echo = FALSE, out.width = "75%"----------------------- knitr::include_graphics ("./mapshot-hulls.png") # plot (xy) ## ----type-polys, eval = FALSE------------------------------------------------- # f_orig <- system.file ("extdata", "omaha.png", package = "mapscanner") # f_mod <- system.file ("extdata", "omaha-polygons.png", package = "mapscanner") # xy <- ms_rectify_map (f_orig, f_mod, type = "polygons", quiet = TRUE) ## ----mapview-polys, eval = FALSE, echo = FALSE-------------------------------- # xy$id <- seq_len (nrow (xy)) # if (!file.exists ("mapshot-polys.png")) { # x <- mapview::mapview (xy) # mapview::mapshot (x, # file = "mapshot-polys.png", # remove_controls = c ("layersControl", "zoomControl"), # vwidth = vwidth, vheight = vheight # ) # } ## ----mapview-polys-fakey, eval = FALSE---------------------------------------- # xy$id <- seq_len (nrow (xy)) # mapview::mapview (xy) ## ----mapshot-polys-png, echo = FALSE, out.width = "75%"----------------------- knitr::include_graphics ("./mapshot-polys.png") # plot (xy) ## ----type-points, eval = FALSE------------------------------------------------ # f_orig <- system.file ("extdata", "omaha.png", package = "mapscanner") # f_mod <- system.file ("extdata", "omaha-polygons.png", package = "mapscanner") # xy <- ms_rectify_map (f_orig, f_mod, type = "points", quiet = TRUE) ## ----mapview-points, eval = FALSE, echo = FALSE------------------------------- # xy$id <- seq_len (nrow (xy)) # if (!file.exists ("mapshot-points.png")) { # x <- mapview::mapview (xy) # mapview::mapshot (x, # file = "mapshot-points.png", # remove_controls = c ("layersControl", "zoomControl"), # vwidth = vwidth, vheight = vheight # ) # } ## ----mapview-points-fakey, eval = FALSE--------------------------------------- # xy$id <- seq_len (nrow (xy)) # mapview::mapview (xy) ## ----mapshot-points-png, echo = FALSE, out.width = "75%"---------------------- knitr::include_graphics ("./mapshot-points.png") # plot (xy) ## ----random-polys-fakey, eval = FALSE----------------------------------------- # n <- 5 # number of polygons # polys <- lapply (seq (n), function (i) { # nxy <- 20 # number of points used to generate hull # xy <- matrix (runif (2 * nxy), ncol = 2) # h <- chull (xy) # sf::st_polygon (list (xy [c (h, h [1]), ])) # }) # polys <- sf::st_sf (n = seq (n), geometry = polys) ## ----random-polys-fakey2, eval = FALSE---------------------------------------- # aggr <- ms_aggregate_polys (polys) # polys$type <- "raw polygons" # aggr$type <- "aggregated polygons" # polys <- rbind (polys, aggr) # # Convert type to factor to order facets: # polys$type <- factor ( # polys$type, # levels = c ("raw polygons", "aggregated polygons") # ) # library (ggplot2) # ggplot (polys, aes (fill = n)) + # geom_sf () + # facet_wrap (~type) ## ----random-polys, echo = FALSE, eval = TRUE---------------------------------- set.seed (1) n <- 5 # number of polygons polys <- lapply (seq (n), function (i) { nxy <- 20 # number of points used to generate hull xy <- matrix (runif (2 * nxy), ncol = 2) h <- chull (xy) sf::st_polygon (list (xy [c (h, h [1]), ])) }) polys <- sf::st_sf (n = seq (n), geometry = polys) aggr <- ms_aggregate_polys (polys) polys$type <- "raw polygons" aggr$type <- "aggregated polygons" polys <- rbind (polys, aggr) polys$type <- factor ( polys$type, levels = c ("raw polygons", "aggregated polygons") ) theme_set (theme_minimal ()) ggplot (polys, aes (fill = n)) + geom_sf () + facet_wrap (~type) ## ----aggr13, eval = TRUE------------------------------------------------------ ggplot (aggr [aggr$n %in% c (1, 3, 5), ], aes (fill = n)) + geom_sf () ## ----aggr-area, eval = TRUE--------------------------------------------------- aggr$area <- sf::st_area (aggr) ggplot (aggr, aes (x = n, y = area)) + geom_line (size = 2) ## ----pdfinfo-fakey, eval = FALSE---------------------------------------------- # pdftools::pdf_info ("chennai.pdf")$keys ## ----pdfinfo, echo = FALSE---------------------------------------------------- x <- list ( "Title" = "EX8921118.44521949+1442748.9088827+8942673.68719591+1486623.76311839", "Producer" = "R 4.0.0", "Creator" = "R" ) x ## ----img-comment-fakey, eval = FALSE------------------------------------------ # img <- magick::image_read ("chennai.png") # magick::image_comment (img) ## ----img-comment, echo = FALSE------------------------------------------------ "EX8921118.44521949+1442748.9088827+8942673.68719591+1486623.76311839"