writexl
writexl spent nine years refusing to do formatting, then shipped all of it in 2.0.0.
A side-by-side editorial comparison of patchwork and rnaturalearth — release velocity, themes, recent moves, and the top alternatives to consider.
patchwork stopped being a ggplot composer and became a page composer.
patchwork assembles plots into compositions with arithmetic operators, and the 1.x line has steadily hardened that grammar: guide and axis collection, free() to exempt a plot from alignment, inset_element() for overlays, and list-like behaviour so lapply() and length() work on a patchwork. Version 1.3.0 added native gt table support. The two releases since are a load-time warning fix and a compatibility pass for the next ggplot2 release.
rnaturalearth finished its sp exit and is now optimising how the data actually arrives.
1.0.0 ended sp support outright, making sf the default and offering terra's SpatVector via `returnclass`, after 0.3.3 had signposted that with lifecycle badges. The two releases since move to delivery mechanics: 1.1.0 reads data directly out of the zip through the GDAL Virtual File System, starts moving unloaded downloads to GeoPackage instead of shapefile, and switches the base URL to naciscdn.org; 1.2.0 adds caching to `ne_download()` when `destdir` is persistent, swaps devtools for pak when installing the companion data packages, and handles Natural Earth's inconsistent raster zip layouts.
patchwork assembles plots into compositions with arithmetic operators, and the 1.x line has steadily hardened that grammar: guide and axis collection, free() to exempt a plot from alignment, inset_element() for overlays, and list-like behaviour so lapply() and length() work on a patchwork. Version 1.3.0 added native gt table support. The two releases since are a load-time warning fix and a compatibility pass for the next ggplot2 release.
The centre of gravity is shifting from alignment mechanics to composition scope. Early releases were almost entirely bug fixes against grid and ggplot2 internals — strip placement, fixed aspect ratios, guide merging. Recent ones add object types and escape hatches instead. Between feature cycles the package is in maintenance defined by ggplot2's release calendar, which is what 1.3.1 is in its entirety.
Expect wrap_table() to grow beyond gt to other table objects, and expect the next substantive release to be triggered by a ggplot2 internals change rather than by a patchwork roadmap.
1.0.0 ended sp support outright, making sf the default and offering terra's SpatVector via `returnclass`, after 0.3.3 had signposted that with lifecycle badges. The two releases since move to delivery mechanics: 1.1.0 reads data directly out of the zip through the GDAL Virtual File System, starts moving unloaded downloads to GeoPackage instead of shapefile, and switches the base URL to naciscdn.org; 1.2.0 adds caching to `ne_download()` when `destdir` is persistent, swaps devtools for pak when installing the companion data packages, and handles Natural Earth's inconsistent raster zip layouts.
With the class question settled, the work has shifted to not re-downloading and not unpacking — VFS reads, caching, and a container format that does not need a sidecar of four files. That points at the package being used in repeated or automated contexts rather than interactive one-offs. The shapefile-to-GeoPackage transition is explicitly incomplete.
Completing the GeoPackage transition for `load = FALSE` downloads is the obvious next step, since 1.1.0 described it as in progress.
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 patchwork or rnaturalearth.
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.
taxa started a ground-up rewrite in 2021 and has published almost nothing since.
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 patchwork alternatives → · See all rnaturalearth alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. patchwork and rnaturalearth 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. patchwork and rnaturalearth 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 patchwork alternatives in Analytics are ranked by recent ship velocity. Browse the "patchwork alternatives" section above for the current picks, or visit /alternatives/patchwork for the full list with editorial commentary on each.
Top rnaturalearth alternatives in Analytics are ranked by recent ship velocity. Browse the "rnaturalearth alternatives" section above for the current picks, or visit /alternatives/rnaturalearth for the full list with editorial commentary on each.