tidytext
Finished, widely taught, and shipping roxygen fixes.
A side-by-side editorial comparison of gganimate and patchwork — release velocity, themes, recent moves, and the top alternatives to consider.
gganimate is in caretaker mode, tracking ggplot2 and little else
gganimate animates ggplot2 graphics, and its recent releases are almost entirely about staying compatible with ggplot2 itself. The last two releases exist to adapt to ggplot2 v4; the substantive work sits back in 1.0.9, which fixed transition bugs and moved internals onto vctrs, cli and lifecycle.
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.
gganimate animates ggplot2 graphics, and its recent releases are almost entirely about staying compatible with ggplot2 itself. The last two releases exist to adapt to ggplot2 v4; the substantive work sits back in 1.0.9, which fixed transition bugs and moved internals onto vctrs, cli and lifecycle.
Development is reactive rather than directional: the package follows ggplot2's internal changes and fixes transition edge cases as they are reported. Renderer work — ragg support, dropping the png dependency for gifski — has been the only place new capability appeared, and that was several years ago.
The next release is most likely another ggplot2 compatibility pass; nothing in these entries points to new transition types or renderers.
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.
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 gganimate or patchwork.
Finished, widely taught, and shipping roxygen fixes.
Text features finally stay sparse all the way to the model.
The package that made calibration a step instead of an afterthought.
workflowsets keeps widening what counts as a model worth comparing.
The tidymodels pipeline grew a third stage, and it happens after the model runs.
Posit's MLOps package went quiet for two years, then came back to keep up with recipes.
See all gganimate alternatives → · See all patchwork alternatives →
Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.
Both compete on the same themes — ggplot2, maintenance — within Analytics. gganimate and patchwork 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. gganimate and patchwork 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 gganimate alternatives in Analytics are ranked by recent ship velocity. Browse the "gganimate alternatives" section above for the current picks, or visit /alternatives/gganimate for the full list with editorial commentary on each.
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.