rnaturalearth
rnaturalearth finished its sp exit and is now optimising how the data actually arrives.
A side-by-side editorial comparison of ggspatial and taxa — release velocity, themes, recent moves, and the top alternatives to consider.
ggspatial finishes its move off raster and onto terra
ggspatial puts spatial data into ggplot2. Its recent history is a single multi-year migration: terra support arrived alongside raster in 1.1.6, and by 1.1.10 terra is the default in the bundled data loaders while raster is described as deprecated. Everything between those two releases is ggplot2 compatibility patching.
taxa started a ground-up rewrite in 2021 and has published almost nothing since.
0.4.0 began a complete rewrite aimed at making the component classes behave like base R vectors, explicitly shipping without the `taxmap` class and parking the old implementation inside metacoder until the new one matured. Four years later that is still where things stand: 0.4.2 experimented with `''` instead of `NA` for missing values and chased a vctrs test break, and 0.4.4 fixed CRAN check issues. The releases before the rewrite were the productive ones — `taxonomy_table()`, `print_tree()`, `get_dataset()`, fuzzy name matching, faster parsers.
ggspatial puts spatial data into ggplot2. Its recent history is a single multi-year migration: terra support arrived alongside raster in 1.1.6, and by 1.1.10 terra is the default in the bundled data loaders while raster is described as deprecated. Everything between those two releases is ggplot2 compatibility patching.
The package tracks the R spatial stack's own generational shift rather than setting direction itself — sf and stars support, then terra, then preparing S3 methods for the next ggplot2. Feature work is rare; the value it delivers is staying current with the layers underneath it.
The likely next step is completing the ggplot2 S3 method preparation that 1.1.10 started, with raster support eventually dropped rather than maintained in parallel.
0.4.0 began a complete rewrite aimed at making the component classes behave like base R vectors, explicitly shipping without the `taxmap` class and parking the old implementation inside metacoder until the new one matured. Four years later that is still where things stand: 0.4.2 experimented with `''` instead of `NA` for missing values and chased a vctrs test break, and 0.4.4 fixed CRAN check issues. The releases before the rewrite were the productive ones — `taxonomy_table()`, `print_tree()`, `get_dataset()`, fuzzy name matching, faster parsers.
The rewrite has not landed. `taxmap`, the class most users came for, was never reimplemented in the new design, and the only releases since are CRAN compliance. Meanwhile metacoder still carries the old taxa, which means the ecosystem is running on the version the rewrite was meant to replace. This reads as a stalled migration rather than an active one.
Nothing in the entries indicates the rewrite is resuming; the likely next release is another CRAN-check fix. Whether `taxmap` ever arrives in the new design is unresolved.
Other Analytics products tracked by Sparkpulse, ranked by recent ship velocity. Each card links to a full editorial trajectory and lets you pivot into a head-to-head comparison with either ggspatial or taxa.
rnaturalearth finished its sp exit and is now optimising how the data actually arrives.
writexl spent nine years refusing to do formatting, then shipped all of it in 2.0.0.
rgbif is steadily pushing users off paged searching and onto real downloads.
rstanarm is community-maintained now, tracking Stan and lme4 rather than adding models.
rotl's whole release history is keeping name matching honest against a moving taxonomy.
taxize spends its releases absorbing other people's API changes, one dead source at a time.
See all ggspatial alternatives → · See all taxa alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. ggspatial and taxa are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.
Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. ggspatial and taxa are shipping at a similar cadence (velocity 0.0 vs 0.0, both within Sparkpulse's "active" band). For your specific use case, the alternatives sections above list other Analytics products to evaluate alongside.
Top ggspatial alternatives in Analytics are ranked by recent ship velocity. Browse the "ggspatial alternatives" section above for the current picks, or visit /alternatives/ggspatial for the full list with editorial commentary on each.
Top taxa alternatives in Analytics are ranked by recent ship velocity. Browse the "taxa alternatives" section above for the current picks, or visit /alternatives/taxa-r for the full list with editorial commentary on each.