← Back to all sparks
T

tidyplots

INFRA · APIS
Velocity0.0

Tidy Plots for Scientific Papers

tidyplots keeps rebuilding its own foundations rather than layering around them.

data-visualizationr-packageggplot2scientific-publishingbreaking-changesstatistics
Current state
tidyplots wraps ggplot2 in a pipe-driven API aimed at publication-ready scientific figures, trading grammar-of-graphics flexibility for a shorter path to a finished plot. It is at 0.4.0 after two years of frequent releases, and almost every one carries a breaking change — the most recent moved multi-panel layout off patchwork and onto ggplot2's own faceting. Statistical annotation, colour schemes and size control have each been reworked at least once.
Where it's heading
The package is converging on ggplot2 rather than abstracting away from it: split_plot() now uses facet_wrap and facet_grid, as_tidyplot() was hard-deprecated on the grounds that converting a ggplot was never a good idea, and releases are timed against upstream ggplot2 versions. The other constant is the statistics surface, which has grown from basic error bars to paired and selected comparisons. Breaking changes are announced plainly and frequently, consistent with a package using 0.x to fix its shape before committing.
Prediction
The patchwork removal is described as something that will eventually break dependent code, so the near-term work is likely completing that migration and settling the split_plot() parameters introduced alongside it. A 1.0 would signal the breaking-change cadence is ending, and nothing here indicates that yet.

Recent moves

  1. 7mo ago

    tidyplots 0.4.0

    split_plot() is rebuilt on ggplot2's faceting functions instead of patchwork::wrap_plots(), which fixes legend glitches and unlocks splitting by two variables through facet_grid, at the cost of eventually breaking patchwork-based code. An engine swap rather than a new capability, but it commits the package further to ggplot2's own model of multi-panel layout.

    View source ↗
  2. 1y ago

    tidyplots 0.3.1

    Statistical testing gains paired and selected comparisons, and styling becomes systematic: a my_style function parameter plus session-wide tidyplots_options() for width, height, unit and dodge width. The first release where a user can set house defaults once rather than per plot.

    View source ↗
  3. 1y ago

    tidyplots 0.2.2

    Mostly preparation for ggplot2 3.6.0, with as_tidyplot() hard-deprecated on the reasoning that converting an existing ggplot was never a sound idea. Documentation and code move to the base R pipe. A release defined by what the package has decided not to be.

    View source ↗
  4. 1y ago

    tidyplots 0.2.1

    Adds coordinate-anchored annotations — text, rectangles and segments — which is what figures need before they are submission-ready. Also corrects the bundled energy dataset to true TWh values and renames its power variable, breaking any code that used it.

    View source ↗
  5. 1y ago

    tidyplots 0.2.0

    Fixes a consequential error: add_sd_errorbar() and add_sd_ribbon() had been drawing two standard deviations while labelling them as one, so any figure made with earlier versions overstates its error bars. Alongside, detailed font control across titles and legends and a new adjust_theme_details().

    View source ↗
  6. 1y ago

    tidyplots 0.1.2

    Colour becomes a first-class subsystem: a tidycolor S3 class that previews schemes in the RStudio viewer, new_color_scheme() for custom palettes, and built-in discrete, continuous and diverging sets. The foundation the later palette additions build on.

    View source ↗