## ----------------------------------------------------------------------------- #| label: packages #| collapse: true #| eval: false # if (!requireNamespace("sf")) install.packages("sf") # if (!requireNamespace("leaflet")) install.packages("leaflet") ## ----------------------------------------------------------------------------- #| label: loading_parzer #| eval: true library(parzer) ## ----------------------------------------------------------------------------- #| label: lats_lons lats <- c( "46.4183", "46.4383° N", "46.5683° N", "46° 27´ 5.4\" N", "46° 25.56’", "N46°24’4.333" ) lons <- c( "25.7391", "E25°34’6.4533", "25.3391° E", "25.8391° E", "25° 35.56’", "E25°34’4.333" ) ## ----------------------------------------------------------------------------- #| label: creating_dat #| collapse: true dat <- data.frame( longitude = parse_lon(lons), latitude = parse_lat(lats) ) dat ## ----------------------------------------------------------------------------- #| label: adding_variables_to_dat #| collapse: true dat$shape <- c("round", "square", "triangle", "round", "square", "square") dat$color <- c("blue", "yellow", "green", "red", "green", "yellow") dat ## ----------------------------------------------------------------------------- #| label: converting_dat_to_sf #| warning: false #| collapse: true datsf <- sf::st_as_sf(dat, coords = c("longitude", "latitude")) datsf ## ----------------------------------------------------------------------------- #| label: map_center center_lon <- mean(dat$longitude) center_lat <- mean(dat$latitude) ## ----out.with="100%"---------------------------------------------------------- #| label: fig-leaflet_1 #| warning: false #| collapse: true library("leaflet") leaflet() |> addTiles() |> addMarkers(data = datsf) |> setView(center_lon, center_lat, zoom = 10) ## ----------------------------------------------------------------------------- #| label: fig-leaflet_2 #| warning: false bbox <- c( xmin = 25.42813, ymin = 46.39455, xmax = 25.68769, ymax = 46.60346 ) leaflet() |> addTiles() |> addRectangles(bbox[["xmin"]], bbox[["ymin"]], bbox[["xmax"]], bbox[["ymax"]]) |> setView(center_lon, center_lat, zoom = 10) ## ----------------------------------------------------------------------------- #| label: cropping_dat datsf_c <- sf::st_crop(datsf, bbox) ## ----out.with="100%"---------------------------------------------------------- #| label: fig-leaflet_3 #| warning: false leaflet() |> addTiles() |> addMarkers(data = datsf_c) |> setView(center_lon, center_lat, zoom = 10)