type: task id: GRAPH_LIBRARY-ADD_QUANTITATIVE_SCALE_HEADROOM_DEFAULTS_FOR_STANDARD_CHARTS title: Add quantitative scale headroom defaults for standard charts description: Capture follow-on work to give standard charts a system-level headroom policy, such as 20% top headroom above the maximum plotted value, instead of relying on manual per-chart scale domains. milestone: m1-ft-analytics-analyst-pilot owner: data-viz-designer-engineer status: not_started priority: p2
Superseded (2026-03-27). This narrowly scoped follow-on was consolidated into Consolidate semantic chart defaults and rendering control-surface follow-ons so the active backlog carries one M2 umbrella task instead of many M1 leaf items. Keep the notes below as reference detail, not as a separately scheduled task.
Capture follow-on work to give standard charts a system-level headroom policy, such as 20% top headroom above the maximum plotted value, instead of relying on manual per-chart scale domains.
During M1 structure-lab work, we noticed that the maximum plotted marks in
standard charts often sit very close to the top of the charting surface. The
current behavior appears to be driven mostly by scale-domain inference (zero,
nice, authored domain) rather than by an explicit visual headroom policy.
For design purposes, we want to think about this at a systems level rather than through manual per-chart domain hacks. The current working assumption is that standard charts should leave about 20% top headroom above the maximum plotted value, unless a chart type or authored override explicitly calls for something different.
This is not naturally a query-layer concern:
Relevant files:
dataface/core/render/chart/standard_renderer.pydataface/core/render/chart/decisions.pydataface/core/render/chart/pipeline.pydataface/core/render/chart/DESIGN.mdexamples/playground/faces/labs/m1-structure-bars-lines-lab.ymlNote:
- m1-structure-bars-lines-lab.yml was a March 26, 2026 session artifact from the
parallel codex/m1-structure-lab branch. If it is not present on main when
work starts, use it as historical context only and recreate the repro as needed.
y_scale.domain or domainMax overrides.
This works chart-by-chart but is exactly the sort of authored hack we want to
avoid as a general system policy.Not started.
March 26, 2026 notes:
N/A for now. This task has not been implemented yet.
Not started.