Repository navigation
Replace lets-plot workarounds with native ggrust features - #76
Merged
Merged
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
arrow_axis and axis_type="arrow" now use element_line(arrow=, extent=) on axis_line_x/axis_line_y instead of geom_path/geom_segment layers, dropping the _TIP_FRACTION workaround. arrow_axis returns a theme: plot= and **geom_kwargs are removed, linetype= is explicit. Sizes scale by 2.2 to keep the former line width. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
dotplot, stacked_violin, matrixplot and heatmap(aggregate=True) order and draw the group tree with scale_y_dendro + guide_axis_dendro from scanpy's linkage. dendrogram_color/size style the y tick line the tree is drawn with; dendrogram_kwargs is removed. The per-cell heatmap keeps its path layer. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ggrust 0.6 removes the LetsPlot shim, so cellestial drops its setup_html alias and the no-op setup call made on import in IPython. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Large groups: p-values, none/bonferroni/BH adjustment and stars agree at label precision. Differences: exact Wilcoxon below 50 tie-free values per group, and ggrust's 'student' is Welch. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
bracket now draws stat_compare_means brackets; cellestial keeps the comparison expansion, the observation check and the bracket heights. Removed: test='student', alternative, label='padj' and label sequences, label_format, prefix, prefix_style, separator, threshold (use hide_ns). Small tie-free groups now get R's exact Wilcoxon test. The gate tests now compare bracket labels with scipy references. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Annotation tracks become geom_xsidetile/geom_ysidetile side layers, each with its own fill scale via new_scale_fill, so they share the heatmap's axes and zoom with it in HTML output. The group dendrogram moves into the observation side band as two-point side-line segments. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Turned track names under a left or right band made the bottom axis area as tall as the longest name, leaving an empty strip above the legends. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The legends already name each track, so the band titles are off unless track_titles=True, and the bands take no extra axis room. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ggside bands always draw their own axis line, at the side position= names, even without breaks. Without titles the band axis now stays on the main axes' sides, so no line is left above the left band. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Welcome to Codecov 🎉Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests. ℹ️ You can also turn on project coverage checks and project coverage reporting on Pull Request comment Thanks for integrating Codecov - We've got you covered ☂️ |
dotplot sized its labels with size_unit="x", which rendered them at a few pixels; it now uses the absolute size stacked_violin already uses, and the unused size-unit mode is removed. matrixplot's square raster cells make one y unit one column wide, so the label padding now grows with the column count instead of clipping labels on wide plots. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Replaces cellestial's lets-plot-era workarounds with native ggrust features (see ggrust's
cellestial_workarounds.md), in four phases.Changes
grid.figures. UMAP arrows are now set in the theme (element_line(arrow=...)), which removes the_TIP_FRACTIONhack.scale_*_dendro. The per-cell heatmap keeps its hand-drawn tree.stat_compare_means. Gate tests compare it against the old scipy code.gggrid. Each track has its own fill scale and legend, and tracks zoom with the heatmap. Newtrack_titlesoption, hidden by default.Breaking (see CHANGELOG)
arrow_axisreturns a theme.plot=and**geom_kwargsare removed, andlinetype=is now its own parameter.dendrogram_kwargsis removed. Dendrogram color and size now come from the theme's y-axis tick lines (axis_ticks_y).setup_htmlis removed (ggrust 0.6 droppedLetsPlot).bracket: small groups (n < 50) use the exact Wilcoxon test."student"now means Welch's t-test.alternative,label_format, the prefix options and custom thresholds are removed;hide_nsremains.annotated_heatmapreturns onePlotSpecinstead of a grid.Tests
847 tests pass, plus 10 browser tests.
Not done
notebooks/annotated_heatmap.ipynbhaven't been re-run.🤖 Generated with Claude Code