Learn R Programming

mapgl

The mapgl R package makes the latest versions of Mapbox GL JS and MapLibre GL JS available to R users. The package interface is designed to make the powerful capabilities of both libraries available in R mapping projects, but also feel similar to users coming from other R mapping packages.

Install from CRAN:

install.packages("mapgl")

Or, install the development version from GitHub:

remotes::install_github("walkerke/mapgl")

Read through these vignettes to learn how to use the package:

Recommended training and how to learn more

If you find this project useful in your work and would like to ensure continued development of the package, you can provide support in the following ways:

To stay on top of package updates / new features and to get information about mapgl trainings, be sure to sign up for the Walker Data mailing list here.

Copy Link

Version

Install

install.packages('mapgl')

Monthly Downloads

2,497

Version

0.3.1

License

MIT + file LICENSE

Maintainer

Kyle Walker

Last Published

July 3rd, 2025

Functions in mapgl (0.3.1)

add_circle_layer

Add a circle layer to a Mapbox GL map
add_markers

Add markers to a Mapbox GL or Maplibre GL map
add_globe_minimap

Add a Globe Minimap to a map
add_line_layer

Add a line layer to a map
add_navigation_control

Add a navigation control to a map
add_layers_control

Add a layers control to the map
add_heatmap_layer

Add a heatmap layer to a Mapbox GL map
add_h3j_source

Add a hexagon source from the H3 geospatial indexing system.
add_image

Add an image to the map
add_image_source

Add an image source to a Mapbox GL or Maplibre GL map
add_layer

Add a layer to a map from a source
add_source

Add a GeoJSON or sf source to a Mapbox GL or Maplibre GL map
add_symbol_layer

Add a symbol layer to a map
add_raster_layer

Add a raster layer to a Mapbox GL map
add_video_source

Add a video source to a Mapbox GL or Maplibre GL map
add_raster_source

Add a raster tile source to a Mapbox GL or Maplibre GL map
add_vector_source

Add a vector tile source to a Mapbox GL or Maplibre GL map
add_raster_dem_source

Add a raster DEM source to a Mapbox GL or Maplibre GL map
add_pmtiles_source

Add a PMTiles source to a Mapbox GL or Maplibre GL map
add_scale_control

Add a scale control to a map
add_reset_control

Add a reset control to a map
cluster_options

Prepare cluster options for circle layers
clear_markers

Clear markers from a map in a Shiny session
clear_legend

Clear legends from a map
compare

Create a Compare widget
concat

Create a concatenation expression
add_view

Add a visualization layer to an existing map
ease_to

Ease to a given view
carto_style

Get CARTO Style URL
fit_bounds

Fit the map to a bounding box
get_column

Get column or property for use in mapping
clear_layer

Clear layers from a map using a proxy
clear_drawn_features

Clear all drawn features from a map
enable_shiny_hover

Enable hover events for Shiny applications
get_drawn_features

Get drawn features from the map
clear_controls

Clear all controls from a Mapbox GL or Maplibre GL map in a Shiny app
classification_helpers

Extract information from classification and continuous scale objects
mapboxgl

Initialize a Mapbox GL Map
mapbox_style

Get Mapbox Style URL
mapboxglCompareOutput

Create a Mapbox GL Compare output element for Shiny
interpolate

Create an interpolation expression
get_queried_features

Get queried features from a map as an sf object
mapboxglOutput

Create a Mapbox GL output element for Shiny
legend_style

Create custom styling for map legends
map_legends

Add legends to Mapbox GL and MapLibre GL maps
maplibre_proxy

Create a proxy object for a Maplibre GL map in Shiny
maplibre_view

Quick visualization of geometries with MapLibre GL
maptiler_style

Get MapTiler Style URL
fly_to

Fly to a given view
match_expr

Create a match expression
number_format

Create a number formatting expression
move_layer

Move a layer to a different z-position
set_config_property

Set a configuration property for a Mapbox GL map
set_filter

Set a filter on a map layer
maplibreOutput

Create a Maplibre GL output element for Shiny
format_numbers

Format numbers for legend labels
interpolate_palette

Create an interpolation expression with automatic palette and break calculation
jump_to

Jump to a given view
maplibreCompareOutput

Create a Maplibre GL Compare output element for Shiny
renderMaplibreCompare

Render a Maplibre GL Compare output element in Shiny
renderMaplibre

Render a Maplibre GL output element in Shiny
maplibre

Initialize a Maplibre GL Map
mapboxgl_proxy

Create a proxy object for a Mapbox GL map in Shiny
mapboxgl_view

Quick visualization of geometries with Mapbox GL
mapboxgl_compare_proxy

Create a proxy object for a Mapbox GL Compare widget in Shiny
maplibre_compare_proxy

Create a proxy object for a Maplibre GL Compare widget in Shiny
set_fog

Set fog on a Mapbox GL map
set_layout_property

Set a layout property on a map layer
set_snow

Set snow effect on a Mapbox GL map
on_section

Observe events on story map section transitions
set_projection

Set Projection for a Mapbox/Maplibre Map
query_rendered_features

Query rendered features on a map in a Shiny session
set_source

Set source of a map layer
step_classification

Step expressions with automatic classification
step_expr

Create a step expression
set_style

Update the style of a map
renderMapboxgl

Render a Mapbox GL output element in Shiny
renderMapboxglCompare

Render a Mapbox GL Compare output element in Shiny
story_map

Create a scrollytelling story map
story_leaflet

Create a scrollytelling story map with Leaflet
mapgl-package

mapgl: Interactive Maps with 'Mapbox GL JS' and 'MapLibre GL JS'
set_paint_property

Set a paint property on a map layer
set_view

Set the map center and zoom level
set_tooltip

Set tooltip on a map layer
set_popup

Set popup on a map layer
set_terrain

Set terrain properties on a map
set_rain

Set rain effect on a Mapbox GL map
story_maplibre

Create a scrollytelling story map with MapLibre
story_section

Create a story section for story maps
add_globe_control

Add a globe control to a map
add_fullscreen_control

Add a fullscreen control to a map
add_geolocate_control

Add a geolocate control to a map
add_fill_layer

Add a fill layer to a map
add_fill_extrusion_layer

Add a fill-extrusion layer to a Mapbox GL map
add_draw_control

Add a draw control to a map
add_geocoder_control

Add a geocoder control to a map
add_control

Add a custom control to a map
add_features_to_draw

Add features to an existing draw control