← Back to all sparks
G

ggstats

ANALYTICS
Velocity0.0

R package ggstats by larmarange — release notes from GitHub.

ggstats keeps widening what a coefficient or Likert plot can be

ggplot2data-visualizationlikertregression-modelssurvey-datar-package
Current state
ggstats extends ggplot2 with statistical plotting: model coefficient plots, Likert and diverging bar charts, proportion geometries and the helpers that make them behave. Recent releases have added an experimental gglikert_side(), left and right total columns for gglikert(), and survey-object support across the Likert family. Development is steady and CRAN-paced, with releases every two to three months.
Where it's heading
Two long-running threads. The coefficient side has been consolidating — ggcoef_multinom() and ggcoef_multicomponents() soft-deprecated in favour of a unified ggcoef_model() with group_by, plus new ggcoef_dodged() and ggcoef_faceted() variants. The Likert side keeps expanding outward instead, absorbing survey objects, total columns and side-by-side layouts. Underneath both is a steady tax of ggplot2 and vctrs compatibility work, including tracking the geom_errorbarh() deprecation in ggplot2 4.0.0.
Prediction
Expect gglikert_side() to lose its experimental status once its interface settles, and the deprecated multinomial entry points to be removed in a future release now that ggcoef_model() covers their cases.

Recent moves

  1. 5mo ago

    gglikert_side() and total columns for Likert plots

    Adds an experimental gglikert_side() and left/right total columns for gglikert() — the totals in particular are what makes a Likert chart readable as a table rather than only as a shape. A term-ordering bug in ggcoef_table() is fixed for the case where two variables share a modality name.

    View source ↗
  2. 7mo ago

    Likert functions accept survey objects

    gglikert(), gglikert_stacked() and gglikert_data() now take survey objects directly, so weighted survey data plots without being flattened to a data frame first. For a package whose Likert charts mostly describe survey results, this closes an obvious gap.

    View source ↗
  3. 11mo ago

    Table output for ggcoef_compare(); x-axis limits harmonised

    ggcoef_compare() gains a table type and ggcoef_plot() an x_limits argument, with sub-plot axis limits harmonised in ggcoef_table() so panels are visually comparable. The ggplot2 4.0.0 deprecation of geom_errorbarh() is absorbed here — the recurring compatibility cost of building on a fast-moving base.

    View source ↗
  4. 1y ago

    ggstats 0.10.0

    Legend order is reversed to match reversed Likert and fill scales, and a misspelled table_witdhs argument is deprecated in favour of table_widths. Small consistency corrections rather than capability.

    View source ↗
  5. 1y ago

    Coefficient plots unified around ggcoef_model() with grouping

    The consolidation release on the coefficient side: ggcoef_model() and ggcoef_table() handle multinomial and multi-component models via new group_by and group_labels arguments, with ggcoef_dodged() and ggcoef_faceted() added as layout variants. The specialised ggcoef_multinom() and ggcoef_multicomponents() are soft-deprecated as a result.

    View source ↗
  6. 1y ago

    Diverging and Likert geoms redesigned; connector geoms added

    A breaking redesign of the diverging, Likert and pyramid geom family introduced one release earlier, with stat_prop() losing its height, labels and labeller arguments. New connector geoms and an auto_contrast shortcut arrive alongside — the shortcut being the kind of default that removes a step users otherwise repeat in every plot.

    View source ↗