← Back to home
Comparison · Analytics

bbotk vs ggraph

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

bbotk vs ggraph: at a glance

Featurebbotkggraph
SectorAnalyticsAnalytics
Velocity score2.50.0
Sparks · 30d00
Top themesblack-box optimization, mlr3, async execution, api deprecationnetwork-visualization, ggplot2, r-stats, maintenance
Last editorial update2h ago1h ago
WebsiteVisit →Visit →

What is bbotk?

bbotk is generalizing from an optimizer toolkit into an evaluation framework.

bbotk is the black-box optimization backend behind mlr3 tuning: search spaces, terminators, archives, and an async layer built on rush. Recent releases pair steady async-API buildout with removal of the deprecated arguments that preceded it. The 1.9.0 release introduced EvalInstance as a base class for OptimInstance, separating evaluating an objective from optimizing one.

Read the full bbotk trajectory →

What is ggraph?

ggraph has settled into ggplot2 compatibility duty

ggraph provides the grammar of graphics for network and tree data. Its recent releases are compatibility and bug-fix work — a collapse fix in get_edges() alongside ggplot2 v4.0.0 upkeep, and before that a pipe rollback. The last release with real content was 2.2.0, a long list of layout and edge-geom corrections.

Read the full ggraph trajectory →

bbotk vs ggraph: editorial side-by-side

B
bbotk
ANALYTICS
2.5

bbotk is generalizing from an optimizer toolkit into an evaluation framework.

◆ Current state

bbotk is the black-box optimization backend behind mlr3 tuning: search spaces, terminators, archives, and an async layer built on rush. Recent releases pair steady async-API buildout with removal of the deprecated arguments that preceded it. The 1.9.0 release introduced EvalInstance as a base class for OptimInstance, separating evaluating an objective from optimizing one.

◆ Where it's heading

Two threads run through the visible history. The first is async optimization maturing: ArchiveAsync gained a full push/finish/fail vocabulary over rush tasks in 1.11.0, and 1.12.0 deleted the deprecated extra arguments it replaced. The second is dependency consolidation, with custom C hypervolume code handed to moocore and rush pinned to 1.0.0, trimming maintenance surface as the async path becomes the default.

◆ Prediction

The deprecation removals in 1.12.0 suggest the async archive API is now treated as settled; the next releases most likely build on EvalInstance rather than continuing to churn ArchiveAsync.

G
ggraph
ANALYTICS
0.0

ggraph has settled into ggplot2 compatibility duty

◆ Current state

ggraph provides the grammar of graphics for network and tree data. Its recent releases are compatibility and bug-fix work — a collapse fix in get_edges() alongside ggplot2 v4.0.0 upkeep, and before that a pipe rollback. The last release with real content was 2.2.0, a long list of layout and edge-geom corrections.

◆ Where it's heading

The feature surface looks finished and the maintenance is about keeping it working under a moving ggplot2. The one architectural move in this window — pushing dendrogram layout into compiled code to escape R's recursion limits, back in 2.1.0 — was about scaling existing features, not adding new ones.

◆ Prediction

Expect the next release to follow ggplot2 4.0.0 rather than introduce layouts or edge geoms.

Alternatives to bbotk and ggraph

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 bbotk or ggraph.

See all bbotk alternatives → · See all ggraph alternatives →

Recent activity from bbotk and ggraph

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

  1. 24d agobbotkDeprecated extra argument removed from ArchiveAsync methods
  2. 1mo agobbotkArchiveAsync gains full push/finish/fail task API over rush
  3. 2mo agobbotkDominance and hypervolume computation moved to moocore
  4. 4mo agobbotkmlr_test_functions adds standard optimization benchmarks
  5. 5mo agobbotkEvalInstance base class separates evaluation from optimization
  6. 8mo agobbotkFix: conditions now work with OptimizerLocalSearch
  7. 11mo agoggraphget_edges() collapse fix and ggplot2 v4 upkeep
  8. 2y agoggraphNative pipe usage rolled back
  9. 2y agoggraphLayout precision and edge geom fixes across the package
  10. 3y agoggraphBinned edge scales and compiled dendrogram layouts
  11. 5y agoggraphC++11 pinned to fix std::random_shuffle deprecation
  12. 5y agoggraphFaceting and edge geom bug fixes

Frequently asked questions

What is the difference between bbotk and ggraph?

They serve adjacent needs but don't currently overlap on shipped themes. bbotk is currently shipping more aggressively (velocity 2.5 vs 0.0), with 0 editorial sparks in the last 30 days against 0. See the at-a-glance table above for a side-by-side breakdown of velocity, recent sparks, and editorial themes.

Is bbotk better than ggraph?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. bbotk is currently shipping more aggressively (velocity 2.5 vs 0.0), with 0 editorial sparks in the last 30 days against 0. For your specific use case, the alternatives sections above list other Analytics products to evaluate alongside.

What are the best alternatives to bbotk?

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

What are the best alternatives to ggraph?

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