← Back to home
Comparison · Analytics

qqman vs vellumwidget

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

qqman vs vellumwidget: at a glance

Featureqqmanvellumwidget
SectorAnalyticsAnalytics
Velocity score0.06.3
Sparks · 30d01
Top themesgwas, genomics, manhattan-plot, visualizationr-graphics, interactive-widgets, declarative-interaction, shiny
Last editorial update14h ago59m ago
WebsiteVisit →Visit →

What is qqman?

The Manhattan-plot package for GWAS results, finished and dormant since 2017.

qqman does two things: manhattan() and qq() plots for genome-wide association study results. Its six visible releases run from 2014 to a single 2017 packaging fix, and the last release with any user-facing change shipped in 2015. The archive is non-monotonic — a 0.0.0 tag published after 0.1.1 archives the pre-package standalone script — so version order and publication order disagree.

Read the full qqman trajectory →

What is vellumwidget?

vellumwidget is dissolving its own API: interaction now lives in the plot spec, not the widget call.

vellumwidget compiles a vellum scene or a vellumplot plot into a self-contained client-side htmlwidget with hover, select, brush, lasso, pan/zoom and export, and no server round-trip. The two-way Shiny story is complete: interactions surface as reactive inputs keyed by output id, and vellumwidget_proxy() drives an already-rendered widget from the server without re-rendering it. The last two releases are fidelity work rather than new surface, calibrating hit-testing from the rendered positions of marks and rendering the raster base image at 2x for HiDPI screens.

Read the full vellumwidget trajectory →

qqman vs vellumwidget: editorial side-by-side

Q
qqman
ANALYTICS
0.0

The Manhattan-plot package for GWAS results, finished and dormant since 2017.

◆ Current state

qqman does two things: manhattan() and qq() plots for genome-wide association study results. Its six visible releases run from 2014 to a single 2017 packaging fix, and the last release with any user-facing change shipped in 2015. The archive is non-monotonic — a 0.0.0 tag published after 0.1.1 archives the pre-package standalone script — so version order and publication order disagree.

◆ Where it's heading

The real development window was 2014 to 2015. The 0.1.2 release did the substantive work, replacing the assumption that SNPs are evenly distributed across chromosomes and handing users control of axis limits, labels and log transformation; 0.1.3 then added annotation by p-value threshold and top-SNP-per-chromosome. After that the package stops. Notably, the archival 0.0.0 entry records that the original script had confidence intervals on QQ plots and richer highlighting than the released package ever regained.

◆ Prediction

With one packaging fix in the last decade, these entries support no prediction of further releases. The package reads as complete for its narrow purpose rather than abandoned mid-arc.

V
vellumwidget
ANALYTICS
6.3

vellumwidget is dissolving its own API: interaction now lives in the plot spec, not the widget call.

◆ Current state

vellumwidget compiles a vellum scene or a vellumplot plot into a self-contained client-side htmlwidget with hover, select, brush, lasso, pan/zoom and export, and no server round-trip. The two-way Shiny story is complete: interactions surface as reactive inputs keyed by output id, and vellumwidget_proxy() drives an already-rendered widget from the server without re-rendering it. The last two releases are fidelity work rather than new surface, calibrating hit-testing from the rendered positions of marks and rendering the raster base image at 2x for HiDPI screens.

◆ Where it's heading

The direction is declarative. 0.7.0 removed the interaction-intent arguments from as_widget() outright, dropping the signature from roughly 36 arguments to 24 and moving highlight, filter and cross-filter into vellumplot's spec via select_point(), condition() and filter_by(). Each release since has enacted more of that compiled spec on the frozen scene, from conditional encodings to single-view filters to cross-view cross-filtering, leaving the widget as an interpreter of the plot rather than a configuration surface of its own. The bug fixes track the same theme the engine's do: measured geometry and rendered geometry must not drift.

◆ Prediction

The notes name the remaining hold-outs explicitly, saying hover_mode, crosshair, legend_click, select_mode and the tooltip-appearance arguments remain only until their spec equivalents land, so the next releases most likely move those into vellumplot and shrink as_widget() further. The scale binds flagged as following the filter work are the other stated next step.

Alternatives to qqman and vellumwidget

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 qqman or vellumwidget.

See all qqman alternatives → · See all vellumwidget alternatives →

Recent activity from qqman and vellumwidget

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

  1. 14d agovellumwidget2x raster base image for HiDPI, and exact element hit-testing
  2. 20d agovellumwidgetInteraction moves into the plot spec; as_widget() sheds a third of its arguments
  3. 27d agovellumwidgetAxis-aware zoom re-ticks the axes instead of scaling the whole scene
  4. 1mo agovellumwidgetSelectable native SVG text, and crisp canvas redraw when zooming raster
  5. 1mo agovellumwidgetServer-side proxy drives a rendered widget without re-rendering it
  6. 1mo agovellumwidgetShiny input read-back, and keyboard plus screen-reader access by default
  7. 9y agoqqmanREADME image path fix for pandoc
  8. 11y agoqqmanAnnotate SNPs by p-value threshold or per-chromosome top hit
  9. 11y agoqqmanChromosome ticks stop assuming even SNP spacing; axis control opens up
  10. 12y agoqqmanArchival tag for the pre-package standalone script
  11. 12y agoqqmanVignette touch-up
  12. 12y agoqqmanZenodo archival tag, no code change

Frequently asked questions

What is the difference between qqman and vellumwidget?

They serve adjacent needs but don't currently overlap on shipped themes. vellumwidget is currently shipping more aggressively (velocity 6.3 vs 0.0), with 1 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 qqman better than vellumwidget?

Sparkpulse doesn't pick a winner — we score release velocity, not feature parity. vellumwidget is currently shipping more aggressively (velocity 6.3 vs 0.0), with 1 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 qqman?

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

What are the best alternatives to vellumwidget?

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