Package: gbif.range 1.9.2

Yohann Chauvier

gbif.range: Species Range Mapping from GBIF Using Ecoregion Constraints

A user-friendly, end-to-end workflow to generate ecologically informed species range maps from sparse observations using environmental clustering and convex hulls. Serves as a standalone framework or complementary approach to Species Distribution Models (SDMs). By constraining estimated ranges within authoritative or custom ecoregion boundaries, the approach prevents spurious range over-prediction common in geometric hull methods. The package automates data acquisition via 'GBIF' synonym-aware, tiled downloads; curates records using 13 configurable filters; and supports multi-scale analysis by integrating global or user-provided spatial layers. Also includes disk-based batch processing for large-scale studies and built-in tools for cross-validation and expert-derived evaluations.

Authors:Yohann Chauvier [cre, aut], Oskar Hagen [aut], Stefan Pinkert [aut], Camille Albouy [aut], Fabian Fopp [aut], Philipp Brun [aut], Patrice Descombes [aut], Florian Altermatt [aut], Loïc Pellissier [aut], Katalin Csillery [aut]

gbif.range_1.9.2.tar.gz
gbif.range_1.9.2.zip(r-4.7-any)gbif.range_1.9.2.zip(r-4.6-any)gbif.range_1.9.2.zip(r-4.5-any)
gbif.range_1.9.2.tgz(r-4.6-any)gbif.range_1.9.2.tgz(r-4.5-any)
gbif.range_1.9.2.tar.gz(r-4.7-any)gbif.range_1.9.2.tar.gz(r-4.6-any)
gbif.range_1.9.2.tgz(r-4.6-emscripten)
manual.pdf |manual.html✨
DESCRIPTION |NEWS
card.svg |card.png
gbif.range/json (API)

# Install 'gbif.range' in R:
install.packages('gbif.range', repos = c('https://8ginette8.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/8ginette8/gbif.range/issues

Pkgdown/docs site:https://8ginette8.github.io

Datasets:

On CRAN:

Conda:

accepted-namesecoregionsenvironmental-classificationfilteringflagsgbif-apihard-limitiucn-red-listlarge-scalemacroecologyrange-mapsspecies-distributionspecies-observationssynonymstaxonomy

8.44 score 41 stars 26 scripts 388 downloads 23 exports 74 dependencies

Last updated from:e2ff6b53e0. Checks:9 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-develOK195
source / vignettesOK278
linux-releaseOK230
macos-releaseOK220
macos-oldrelOK266
windows-develOK224
windows-releaseOK196
windows-oldrelOK203
wasm-releaseOK135

Exports:check_and_get_ecoregcsclcv_rangeecoreg_listevaluate_rangefig_labelgbif_haveget_doiget_ecoregget_gbifget_gbif_countget_rangeget_statusgetGBIFmake_blocksmake_ecoregmake_tilesmerge_rangeobs_filterread_ecoregread_range_rdsspecies_csvs_to_rangessplit_gbif_by_species

Dependencies:abindaskpassclassclassIntcliclusterClusterRCoordinateCleanercpp11crulcurldata.tableDBIdplyre1071farverFNNgenericsgeometrygeosphereggplot2gluegmpgtablehttpcodehttrisobandjsonliteKernSmoothlabelinglazyevallifecyclelinproglpSolvemagicmagrittrmclustmimeNMOFoaiopensslpillarpkgconfigplyrproxyR6RColorBrewerRcppRcppArmadilloRcppProgressrgbifrlangrnaturalearths2S7scalessfstringistringrsysterratibbletidyselecttriebeardunitsurltoolsutf8vctrsviridisLitewhiskerwithrwkxml2zip

Part 0: Getting Started
Transparent setup | Scope | Installation | Package overview | Terrestrial example: Panthera tigris | Inspect the taxon concept | Download occurrences | Build the range map | Marine example: Delphinus delphis | Available ecoregions | Local example: custom ecoregions with make_ecoreg() | Large downloaded GBIF tables | Next steps | References

Last update: 2026-08-13
Started: 2026-06-23

Part 3: Large Downloaded GBIF Tables
Transparent setup | Scope | Why the workflow is split into two steps | Example data | Step 1: split the downloaded table by species | Step 2: build ranges sequentially from disk | The built-in ecoregion shortcut | A production-style terrestrial batch | Inspect one species file before building ranges | Step 3: read and inspect the saved ranges | Practical advice | Take-home message | References

Last update: 2026-07-31
Started: 2026-03-25

Part 1: GBIF Retrieval, Taxonomy, and Filtering
Transparent setup | Scope | Why taxonomy comes first | Count before download | Strict versus permissive name matching | Credential-free GBIF retrieval | Credential-based retrieval with occ_download | A terrestrial large-extent example | Post-download thinning with obs_filter() | Explicit tiling workflows | Reproducible GBIF citation | Take-home message | References

Last update: 2026-07-30
Started: 2026-03-25

Part 2: Ecoregion-Based Range Inference
Transparent setup | Scope | How get_range() works | A minimal offline example | Packaged versus custom ecoregions | A broad terrestrial workflow: Panthera tigris | A finer regional workflow: Arctostaphylos alpinus in the Alps | Tuning the main range arguments | Evaluation workflows | Take-home message | References

Last update: 2026-07-30
Started: 2026-03-25

Supplementary: manuscript figures
Scope | Online data retrieval | Figure 1a (left) — Custom ecoregion range: Arctostaphylos alpinus | Figure 1a (right) — Packaged ecoregion range: Panthera tigris | Figure 2a–b — Cross-validation of ecoregion-constrained ranges | Figure 2c–d — Evaluation against external validation data | Figure 3 — Global richness comparison and correlation | References

Last update: 2026-07-30
Started: 2026-07-23

Readme and manuals

Help Manual

Help pageTopics
gbif.range: Tools for GBIF Retrieval and Ecoregion-Based Species Range Mappinggbif.range-package gbif.range
Range Area Comparison Dataarea_data
Check for a Local Ecoregion Layer and Download It if Neededcheck_and_get_ecoreg
Draw a Custom Legend Barcscl
Evaluate a Range Map by Cross-Validationcv_range
Metadata for Downloadable Ecoregion Layersecoreg_list
Evaluate Range Maps Against Independent Validation Dataevaluate_range
Draw a Figure Label at a Standard Positionfig_label
Create a DOI for GBIF-derived datasetsget_doi
Download Ecoregion Layersget_ecoreg
Download and Filter GBIF Occurrences for Spatial Analysesget_gbif
Count GBIF Occurrences Before Downloading Dataget_gbif_count
Create Species Range Maps from Occurrences and Ecoregionsget_range
Retrieve Taxonomy and IUCN Status from GBIFget_status
Constructor for 'getGBIF' ObjectsgetGBIF
Reference Class for 'get_range()' ResultsgetRange getRange-class
Split Data into Approximately Balanced Foldsmake_blocks
Build Custom Ecoregions from Environmental Layersmake_ecoreg
Create Tiled GBIF Geometry Queriesmake_tiles
Merge the polygons of a species range mapmerge_range
Filter GBIF Records by Grid Cellobs_filter
Plot a Packed Raster Range Saved by 'species_csvs_to_ranges()'plot.gbifPackedSpatRaster
Plot a Packed Vector Range Saved by 'species_csvs_to_ranges()'plot.gbifPackedSpatVector
Read an Ecoregion Layerread_ecoreg
Read a Range File Saved by 'species_csvs_to_ranges()'read_range_rds
Build Range Maps from Per-Species GBIF Files Saved on Diskspecies_csvs_to_ranges
Split a Downloaded GBIF Table into One File per Speciessplit_gbif_by_species