TidyDensity
A distribution catalogue that grows by one family at a time, and rarely breaks anything.
A side-by-side editorial comparison of ggmapinset and qualpalr — release velocity, themes, recent moves, and the top alternatives to consider.
A ggplot2 inset-map extension that is now infrastructure for other packages
ggmapinset adds magnified inset panels to ggplot2 sf maps, handling the coordinate transformation, the inset frame and the sf-related stat layers that have to follow it. The 0.5.0 release is aimed less at end users than at extension authors: coerce_centre() is a new extension point required by sibling package ggautomap, and the inset parameter drops NA in favour of waiver() as its default. It comes from cidm-ph, alongside nswgeo.
A palette generator became a palette platform — and changed the metric behind every color it picks.
qualpalr generates maximally distinct categorical color palettes by optimizing perceptual distance, with adaptation for color vision deficiency built in from early on. Version 1.0.0 in August 2025 ended an eight-year stretch of small maintenance releases: the color-difference metric became selectable, existing palettes from ColorBrewer and Tableau became usable as input, and functions arrived to list, retrieve, extend and analyze palettes rather than only generate them. The C++ backend was rewritten as part of the same release.
ggmapinset adds magnified inset panels to ggplot2 sf maps, handling the coordinate transformation, the inset frame and the sf-related stat layers that have to follow it. The 0.5.0 release is aimed less at end users than at extension authors: coerce_centre() is a new extension point required by sibling package ggautomap, and the inset parameter drops NA in favour of waiver() as its default. It comes from cidm-ph, alongside nswgeo.
The package has moved steadily from feature to foundation. 0.3.0 replaced confusing parameter names and rebuilt everything on stat_sf_inset() so coordinate limits stayed correct, then exposed transform_to_inset() explicitly for extension developers. 0.4.0 generalised inset shapes beyond circles to rectangles and arbitrary sf geometries. 0.5.0 continues in that direction, changing defaults in ways that require downstream extensions to adapt — the cost of being depended upon.
Expect further extension points driven by what ggautomap and the other cidm-ph mapping packages need, with the user-facing inset API staying largely settled after the shape generalisation.
qualpalr generates maximally distinct categorical color palettes by optimizing perceptual distance, with adaptation for color vision deficiency built in from early on. Version 1.0.0 in August 2025 ended an eight-year stretch of small maintenance releases: the color-difference metric became selectable, existing palettes from ColorBrewer and Tableau became usable as input, and functions arrived to list, retrieve, extend and analyze palettes rather than only generate them. The C++ backend was rewritten as part of the same release.
The package is moving from a generator to a toolkit that also works on palettes it did not create. Accepting a named palette as input, extending an existing one, and analyzing an arbitrary categorical palette all point the optimization machinery outward at the palettes people already use. The color-vision-deficiency handling followed the same path, consolidating from a single cvd_severity scalar to a named vector giving protan, deuter and tritan their own severities.
Two deprecations are explicitly staged for the next major release — autopal(), with no replacement offered, and cvd_severity — so removal is the most likely next structural step. The 1.0.1 release already tracks the underlying qualpal C++ library separately, suggesting future changes may arrive from there.
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 ggmapinset or qualpalr.
A distribution catalogue that grows by one family at a time, and rarely breaks anything.
College football's open data client hit v2 — and now reports how many API calls you have left.
The USA phenology data client rebuilt its entire stack and stopped handing users -9999 as a number.
GeneNMF rebuilt how it derives meta-programs, changing every result it had produced.
Publication-ready psychology tables and plots, tracking APA style as closely as the software allows.
A spatial-statistics utility package exists to be depended on, and is built accordingly.
See all ggmapinset alternatives → · See all qualpalr alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
They serve adjacent needs but don't currently overlap on shipped themes. ggmapinset and qualpalr 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. ggmapinset and qualpalr 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 ggmapinset alternatives in Analytics are ranked by recent ship velocity. Browse the "ggmapinset alternatives" section above for the current picks, or visit /alternatives/ggmapinset for the full list with editorial commentary on each.
Top qualpalr alternatives in Analytics are ranked by recent ship velocity. Browse the "qualpalr alternatives" section above for the current picks, or visit /alternatives/qualpalr for the full list with editorial commentary on each.