| Type: | Package | 
| Version: | 1.3.14 | 
| Date: | 2025-06-27 | 
| Title: | Dynamic and Interactive Maps | 
| Description: | Dynamic and Interactive Maps with R, powered by 'leaflet' https://leafletjs.com. 'evolMap' generates a web page with interactive and dynamic maps to which you can add geometric entities (points, lines or colored geographic areas), and/or markers with optional links between them. The dynamic ability of these maps allows their components to evolve over a continuous period of time or by periods. | 
| License: | BSD_2_clause + file LICENSE | 
| Depends: | R (≥ 3.5.0) | 
| Imports: | jsonlite, curl, sf | 
| Suggests: | knitr, rmarkdown | 
| VignetteBuilder: | knitr | 
| NeedsCompilation: | no | 
| Maintainer: | Modesto Escobar <modesto@usal.es> | 
| Encoding: | UTF-8 | 
| RoxygenNote: | 7.1.2 | 
| Acknowledgments: | Grants CSO2013-49278-EXP, PGC2018-093755-B100, PDC2022-133355-100, PID2023-147358NB-100 funded by MICIU/AEI/10.13039/501100011033 and by “European Union NextGenerationEU/PRTR”. | 
| Packaged: | 2025-07-01 17:25:21 UTC; modes | 
| Author: | Modesto Escobar | 
| Repository: | CRAN | 
| Date/Publication: | 2025-07-01 17:50:02 UTC | 
World country polygons
Description
The object loaded is an sf object containing world map data from Natural Earth with a few variables from World Bank.
Usage
data("World")Format
Formal class 'sf' [package "sf"]; the data contains a data frame with 177 obs. of 11 variables:
- iso_a2
- : character vector of ISO 2 character country codes 
- name_long
- : character vector of country names 
- continent
- : character vector of continent names 
- region_un
- : character vector of region names 
- subregion
- : character vector of subregion names 
- type
- : character vector of type names 
- area_km2
- : integer vector of area values 
- pop
- : integer vector of population in 2014 
- lifeExp
- : integer vector of life expectancy at birth in 2014 
- gdpPercap
- : integer vector of per-capita GDP in 2014 
- geom
- : sfc_MULTIPOLYGON 
The object is in geographical coordinates using the WGS84 datum.
Source
https://www.naturalearthdata.com/ https://data.worldbank.org/
Examples
if (requireNamespace("sf", quietly = TRUE)) {
  library(sf)
  data(World)
  plot(World)
}
Add description of the map.
Description
Add a description of the evolMap object to be showned on screen.
Usage
add_description(map, content = "", width = NULL)
Arguments
| map | an object of class  | 
| content | a character string indicating a description text for the graph. | 
| width | a percentage indicating the width for the description panel (25% of the window by default). | 
Value
Object of class evolMap.
Author(s)
Modesto Escobar modesto@usal.es, Department of Sociology and Communication, University of Salamanca, Carlos Prieto cprietos@usal.es, and David Barrios metal@usal.es, Bioinformatics Service, University of Salamanca.
Examples
# create map
map <- create_map()
map <- add_description(map, "Lorem ipsum dolor sit amet, consectetur adipiscing elit.")
# plot map
plot(map)
Add entities.
Description
Add entities to the interactive map.
Usage
add_entities(map, entities, attributes = NULL, name = NULL,
  label = NULL, color = NULL, text = NULL,
  info = NULL, infoFrame = c("right","left"), rightFrameWidth = NULL,
  start = NULL, end = NULL, period = NULL, opacity = 0.2)
Arguments
| map | an object of class  | 
| entities | a spatial object of geometries. | 
| attributes | a data frame with information to show for each geometry. Its columns names can be passed as parameters to the arguments. | 
| name | name of the column with names in the entities or attributes data frame. | 
| label | name of the column with labels in the entities or attributes data frame. | 
| color | name of the column with color variable in the entities or attributes data frame. | 
| text | name of the column in the entities or attributes data frame with texts in the entities or attributes data frame. This information will be shown as a popup. | 
| info | name of the column with information to display in a panel in the data matrix. | 
| infoFrame | Panel (right or left) where the information is to be displayed. The left panel is only available if a description is provided with  | 
| rightFrameWidth | a percentage indicating the width for the right information panel. | 
| start | name of the column with the start time of a period in the entities or attributes data frame. | 
| end | name of the column with the end time of a period in the entities or attributes data frame. | 
| period | name of the column with the period name in the entities or attributes data frame. | 
| opacity | Entity opacity expressed as a numeric vector between 0 and 1. Default: 0.2. | 
Value
Object of class evolMap.
Author(s)
Modesto Escobar modesto@usal.es, Department of Sociology and Communication, University of Salamanca, Carlos Prieto cprietos@usal.es, and David Barrios metal@usal.es, Bioinformatics Service, University of Salamanca.
Examples
data(World)
map <- create_map()
map <- add_entities(map, World, color="pop")
# plot map
plot(map)
Add links.
Description
Add links to the interactive map.
Usage
add_links(map, links, color = NULL, start = NULL, end = NULL, period = NULL,
  curve = TRUE, arrows = FALSE)
Arguments
| map | an object of class  | 
| links | a link data frame with two first columns as source and target marker names (specified with the  | 
| color | name of the column with color variable in the link data frame. | 
| start | name of the column with the start time of a period in the link data frame. | 
| end | name of the column with the end time of a period in the link data frame. | 
| period | name of the column with the period name in the link data frame. | 
| curve | Links will be displayed as a curve. | 
| arrows | Links will show an arrow at the end. | 
Value
Object of class evolMap.
Author(s)
Modesto Escobar modesto@usal.es, Department of Sociology and Communication, University of Salamanca, Carlos Prieto cprietos@usal.es, and David Barrios metal@usal.es, Bioinformatics Service, University of Salamanca.
Examples
# create data
markers <- data.frame(
  lat=c(39,47,53,40,53),
  lon=c(-5, 2,-8,-8,-1),
  name=c("m1","m2","m3","m4","m5")
)
links <- data.frame(
  source=c("m4","m1","m2","m5"),
  target=c("m1","m2","m5","m3"),
  num=1:4
)
# create map
map <- create_map()
map <- add_markers(map, markers, name="name", color="name", markerCluster=FALSE)
map <- add_links(map, links, color="num")
# plot map
plot(map)
Add markers.
Description
Add markers to the interactive map.
Usage
add_markers(map, data, latitude = NULL, longitude = NULL, name = NULL,
  label = NULL, image = NULL, size = NULL, color = NULL, shape = NULL,
  text = NULL, info = NULL, infoFrame = c("right","left"),
  rightFrameWidth = NULL, start = NULL, end = NULL, period = NULL,
  markerCluster = FALSE, roundedIcons = TRUE, jitteredPoints = 0,
  coords = FALSE)
Arguments
| map | an object of class  | 
| data | a marker data frame with the locations and information to show in each marker. Its column names can be passed as parameters to the arguments of the function. | 
| latitude | name of the column with the latitude coordinates for each marker (first column by default). | 
| longitude | name of the column with the longitude coordinates for each marker (second column by default). | 
| name | name of the column with names in the marker data frame. | 
| label | name of the column with labels in the marker data frame. | 
| image | name of the column with the path to marker image files in the marker data frame. | 
| size | name of the column with size in the nodes data frame. | 
| color | name of the column with color variable in the marker data frame. | 
| shape | name of the column with shape variable in the marker data frame. | 
| text | name of the column with texts in the marker data frame. This information will be shown as a popup. | 
| info | name of the column with information to display in a panel in the marker data frame. | 
| infoFrame | Panel (right or left) where the information is to be displayed. The left panel is only available if a description is provided with  | 
| rightFrameWidth | a percentage indicating the width for the right information panel. | 
| start | name of the column with the start time of a period in the marker data frame. | 
| end | name of the column with the end time of a period in the marker data frame. | 
| period | name of the column with the period name in the marker data frame. | 
| markerCluster | enable joining of nearby markers when zooming out. | 
| roundedIcons | display markers with rounded borders. | 
| jitteredPoints | add an amount of noise to markers to avoid overlapping. | 
| coords | should coordinates (latitude and longitude) must be shown in the table and filters? (FALSE by default) | 
Value
Object of class evolMap.
Author(s)
Modesto Escobar modesto@usal.es, Department of Sociology and Communication, University of Salamanca, Carlos Prieto cprietos@usal.es, and David Barrios metal@usal.es, Bioinformatics Service, University of Salamanca.
Examples
# load data
data(sociologists)
data(locations)
# load pictures
sociologists$picture <- system.file("extdata", sociologists$picture,
  package="evolMap")
# join locations
sociologists$latitude <- locations[,1]
sociologists$longitude <- locations[,2]
# create map
map <- create_map()
map <- add_markers(map, sociologists,
  latitude = "latitude", longitude = "longitude",
  label = "label", image = "picture",
  start = "birth", end = "death")
# plot map
plot(map)
Add Periods.
Description
Add periods to the interactive map.
Usage
add_periods(map, periods, name = NULL, start = NULL, end = NULL,
  latitude = NULL, longitude = NULL, zoom = NULL,
  description = NULL, popup = FALSE, duration = NULL, periodrep = TRUE)
Arguments
| map | an object of class  | 
| periods | a period data frame defining periods with the following columns: name, start and end. | 
| name | name of the column with names in the period data frame (first column by default). | 
| start | name of the column with the start time of a period in the period data frame (second column by default). | 
| end | name of the column with the end time of a period in the period data frame (third column by default). | 
| latitude | name of the column with the latitude coordinates to center zoom on each period. | 
| longitude | name of the column with the longitude coordinates for center zoom in each period. | 
| zoom | name of the column with the zoom size to display each period. | 
| description | name of the column with the description of each period. | 
| popup | should the description be displayed as a popup?. | 
| duration | name of the column with the period duration in seconds. | 
| periodrep | If false, time will run by year, and the period will only be shown in the header. Otherwise, time will run by period. | 
Value
Object of class evolMap.
Author(s)
Modesto Escobar modesto@usal.es, Department of Sociology and Communication, University of Salamanca, Carlos Prieto cprietos@usal.es, and David Barrios metal@usal.es, Bioinformatics Service, University of Salamanca.
Examples
data(sociologists)
data(locations)
# load pictures
sociologists$picture <- system.file("extdata", sociologists$picture,
  package="evolMap")
# join locations
sociologists$latitude <- locations[,1]
sociologists$longitude <- locations[,2]
# create map
map <- create_map()
map <- add_markers(map, sociologists,
  latitude = "latitude", longitude = "longitude",
  label = "label", image = "picture",
  start = "birth", end = "death",
  period = "generation", markerCluster = FALSE)
periods <- data.frame(
name = c("1775-1799","1800-1824","1825-1850","1851-1874"),
start = c(1775,1800,1825,1851),
end = c(1799,1824,1850,1874)
)
map <- add_periods(map, periods)
# plot map
plot(map)
Adds a tutorial for the map.
Description
add_tutorial adds a tutorial for a map. 
Usage
add_tutorial(map, image = NULL, description = NULL)
Arguments
| map | object of class  | 
| image | character vector indicating the image path, header for the tutorial. | 
| description | a character string indicating a desription text to insert in the tutorial. | 
Value
Object of class evolMap.
Author(s)
Modesto Escobar, Department of Sociology and Communication, University of Salamanca.
Examples
# create map
map <- create_map()
map <- add_tutorial(map)
# plot map
plot(map)
Interactive map.
Description
create_map produces the structure of an interactive map with 'Leaflet'. 
Usage
create_map(center = NULL, zoom = NULL, zoomStep = NULL,
  provider = "OpenStreetMap", main = NULL, note = NULL, mode = 1,
  defaultColor = "#2f7bee", controls = 1:4, language = c("en","es","ca"))
Arguments
| center | a numeric two size vector length giving latitude and longitude to set the initial view. (default: 0,0) | 
| zoom | a number greater than or equal to 0 to stablish the startet zoom. (default: 3) | 
| zoomStep | a number greater than 0 to determine the zoom step. (default: 0.25) | 
| provider | character string with the map provider to represent as background, OpenStreetMap by default. See  | 
| main | upper title of the graph. | 
| note | text to appear at the bottom of the map. | 
| mode | a number indicating the graphic style. (default: 1) | 
| defaultColor | a character vector giving a valid html color for marker representation. | 
| controls | a numeric vector indicating which controls will be shown. 1 = tools (filters in mode=2), 2 = buttons, 3 = legends, 4 = search box. NULL hides all controls, negative values deny each control and 0 denies all. | 
| language | a character string indicating the language of the graph (en=english (default); es=spanish; ca=catalan). | 
Value
Object of class evolMap.
Author(s)
Modesto Escobar modesto@usal.es, Department of Sociology and Communication, University of Salamanca, Carlos Prieto cprietos@usal.es, and David Barrios metal@usal.es, Bioinformatics Service, University of Salamanca.
Examples
# create map
map <- create_map()
# plot map
plot(map)
Get location coordinates.
Description
get_location returns the latitude and longitude of each input place name. 
Usage
get_location(x)
Arguments
| x | a vector string with place names ("city, country") whose coordinates will be downloaded from OpenStreetMap. | 
Value
Matrix with the latitude and longitude coordinates of each input place.
Author(s)
Modesto Escobar modesto@usal.es, Department of Sociology and Communication, University of Salamanca, Carlos Prieto cprietos@usal.es, and David Barrios metal@usal.es, Bioinformatics Service, University of Salamanca.
Examples
get_location(c("Salamanca, Spain","New York, United States"))
Get location coordinates.
Description
List of all providers with their map variations.
Usage
list_providers()
Value
This function returns a list of available map providers for the create_map function.
Author(s)
Modesto Escobar modesto@usal.es, Department of Sociology and Communication, University of Salamanca, Carlos Prieto cprietos@usal.es, and David Barrios metal@usal.es, Bioinformatics Service, University of Salamanca.
Examples
list_providers()
Data: Birthplaces locations of classical sociologists.
Description
Matrix with birthplace locations of certain sociologists.
Usage
data("locations")Format
A matrix with birthplace locations of 16 sociologists:
- lat
- : latitude. 
- lon
- : longitude. 
Source
Own elaboration from manuals of sociology and OpenStreetMap.
References
See sociologists.
Examples
data(locations)
Data: Classical sociologists.
Description
Data frame with names, birth and death year data, birth country and school of thought.
Usage
data("sociologists")Format
A data frame of 16 sociologists with 11 variables to study time coincidences:
- name
- : first and last name of the sociologist. 
- birth
- : birth year. 
- death
- : death year. 
- birth_place
- : birth city. 
- birth_country
- : birth country. 
- death_place
- : death city. 
- death_country
- : death country. 
- label
- : combination of name, birth and death dates. 
- generation
- : generation (every 25 years) of the sociologist. 
- school
- : school of thought. 
- picture
- : name and path of the file where their picture is. 
Source
Own elaboration from manuals of sociology.
Examples
data(sociologists)
head(sociologists, 10)
tail(sociologists, 10)