← Back to home
Comparison · Infra & APIs

slendr vs tidyplots

A side-by-side editorial comparison of slendr and tidyplots — release velocity, themes, recent moves, and the top alternatives to consider.

slendr vs tidyplots: at a glance

Featureslendrtidyplots
SectorInfra & APIsInfra & APIs
Velocity score0.00.0
Sparks · 30d00
Top themespopulation-genetics, simulation, tree-sequences, python-interopdata-visualization, r-package, ggplot2, scientific-publishing
Last editorial update6h ago1h ago
WebsiteVisit →Visit →

What is slendr?

Population-genetic simulation in R, opened up to selection and finally easier to install.

slendr specifies spatial and non-spatial population-genetic models in R and simulates them through SLiM or msprime, returning tree sequences that tskit then analyses. Two threads dominate the current releases: keeping in step with fast-moving backends, with SLiM 5.1, pyslim 1.1.0 and Python 3.13 now required, and reducing the setup burden that its Python dependency imposes. Version 1.5.0 adds ephemeral uv-based virtual environments, so init_env(uv = TRUE) can stand in for creating a permanent environment with setup_env().

Read the full slendr trajectory →

What is tidyplots?

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

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.

Read the full tidyplots trajectory →

slendr vs tidyplots: editorial side-by-side

S
slendr
INFRA · APIS
0.0

Population-genetic simulation in R, opened up to selection and finally easier to install.

◆ Current state

slendr specifies spatial and non-spatial population-genetic models in R and simulates them through SLiM or msprime, returning tree sequences that tskit then analyses. Two threads dominate the current releases: keeping in step with fast-moving backends, with SLiM 5.1, pyslim 1.1.0 and Python 3.13 now required, and reducing the setup burden that its Python dependency imposes. Version 1.5.0 adds ephemeral uv-based virtual environments, so init_env(uv = TRUE) can stand in for creating a permanent environment with setup_env().

◆ Where it's heading

Since the 1.0.0 release added non-neutral simulation, the work has shifted from capability to friction. A large share of recent notes concerns Python environment handling, conda activation races on Windows, dependency pruning that made shiny optional, and argument names that misled users, as when gene_flow()'s rate argument turned out to mean total ancestry proportion rather than a rate. That is the profile of a package whose scientific surface is settled and whose remaining problems are the ones users actually hit.

◆ Prediction

Expect the uv-based environment path to move from fallback to default once it has proven itself, given the notes already describe an environment variable for making it so. The deprecated rate argument in gene_flow() is explicitly slated for removal in a future major release, which is the clearest signal here of what a 2.0 would contain.

T
tidyplots
INFRA · APIS
0.0

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

◆ 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.

Alternatives to slendr and tidyplots

Other Infra & APIs 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 slendr or tidyplots.

See all slendr alternatives → · See all tidyplots alternatives →

Recent activity from slendr and tidyplots

Latest ship moves from both products, interleaved chronologically. ⚡ = editorial spark.

  1. 1mo agoslendrEphemeral uv Python environments remove the setup step
  2. 7mo agoslendrgene_flow() separates migration rate from ancestry proportion
  3. 7mo agotidyplotstidyplots 0.4.0
  4. 9mo agoslendrshiny made optional; SLiM 5.1 and Python 3.13 required
  5. 1y agoslendrconda activation reverted to a slower but reliable path
  6. 1y agotidyplotstidyplots 0.3.1
  7. 1y agoslendrBackends raised to SLiM 5.0, tskit 0.6.4 and msprime 1.3.4
  8. 1y agotidyplotstidyplots 0.2.2
  9. 1y agotidyplotstidyplots 0.2.1
  10. 1y agotidyplotstidyplots 0.2.0
  11. 1y agoslendrNon-neutral models arrive; slim() interface simplified
  12. 1y agotidyplotstidyplots 0.1.2

Frequently asked questions

What is the difference between slendr and tidyplots?

They serve adjacent needs but don't currently overlap on shipped themes. slendr and tidyplots 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.

Is slendr better than tidyplots?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. slendr and tidyplots 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 Infra & APIs products to evaluate alongside.

What are the best alternatives to slendr?

Top slendr alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "slendr alternatives" section above for the current picks, or visit /alternatives/slendr for the full list with editorial commentary on each.

What are the best alternatives to tidyplots?

Top tidyplots alternatives in Infra & APIs are ranked by recent ship velocity. Browse the "tidyplots alternatives" section above for the current picks, or visit /alternatives/tidyplots for the full list with editorial commentary on each.