Repository navigation
feat(viz): funnel --area draws a funnel area - #4842
Merged
Merged
Conversation
Up to standards ✅🟢 Issues
|
jqnatividad
force-pushed
the
feat/viz-ternary
branch
from
October 18, 2026 18:41
71cdad1 to
73951dd
Compare
`viz funnel --area` emits a plotly funnelarea instead of the bar funnel: stacked sections sized by each stage's share of the total, labeled with value and percent of the total (the bar funnel's conversion from the previous stage has no meaning on a share-sized section). Stage order, aggregation and the negative-total check are shared; --area on any other chart is a usage error. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A funnel area's outline narrows regardless of the data, so a stage larger than its predecessor reads as an ordinary drop-off. --area now names the first such stage on stderr (and the help says why); the bar funnel, which shows growth as a wider bar, is unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Both checks lived in build_plot, which `viz smart` never reaches, so `viz smart --area` and `viz smart --degrees` silently ignored the flag. Move them into run() before dispatch; tests now cover smart. Addresses roborev 5472. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
jqnatividad
force-pushed
the
feat/viz-funnelarea
branch
from
October 18, 2026 23:34
d83524c to
2d481c4
Compare
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.
Stacked on #4841 (ternary), which is stacked on #4840 (barpolar). Retarget to
masteronce those merge; this branch will need the same rebase ontomaster.What's new
viz funnel --areadraws the funnel as a plotly.jsfunnelarea: stacked sections sized by each stage's share of the total, labeled with its value and percent of the total. The bar funnel labels the conversion from the previous stage instead, which has no meaning on a share-sized section.--ysum, or row counts without it) and the negative-total check are shared with the bar funnel.--areastill draws, but names the first such stage on stderr ("stageRenewed(260) is larger thanSubscribed(200) before it … drop --area to see it as a wider bar"). The--areahelp says so too.--areaand--degreesare rejected on every other chart,viz smartincluded. Both checks now run inrun()before dispatch. Previously they lived inbuild_plot, whichviz smartnever reaches, soviz smart --area/--degreessilently ignored the flag (roborev 5472;--degreescomes from feat(viz): barpolar wind rose; clock-face polar bars for the smart seasonality panel #4840).docs/help/viz.mdandqsv-viz.json(--area, a usage example).Gallery
A
funnel --areafigure next to the bar funnel, on the same signup data. On data this skewed, the last stages are thin slivers with crowded labels, which is why the bar funnel stays the default.Verification
cargo t viz -F all_features: 485 unit and 660 integration tests pass. New:viz_funnel_area_sizes_sections_by_share,viz_funnel_area_warns_when_a_stage_grows,viz_area_only_applies_to_funnel(pie and smart), plussmart --degreesinviz_barpolar_usage_errors.--area, changing its labels, removing the non-funnel check, suppressing the growth warning, warning on every pipeline, and exemptingsmartfrom either flag check each fails a test.scripts/double-run-check.py --checkOK;cargo +nightly fmt; clippy reports no warnings on added lines.The wiki Visualization page update is staged locally and will be pushed after merge.
🤖 Generated with Claude Code