type: task
id: GRAPH_LIBRARY-RESEARCH_TEMPORAL_AXIS_GROUPING_FOR_WEEKLY_TICKS_AND_MONTHLY_LABELS
title: Research temporal axis grouping for weekly ticks and monthly labels
description: Investigate how Vega-Lite and Dataface should support temporal axes where
dense weekly ticks remain visible but higher-level month labels are shown as grouped
or centered interval labels.
milestone: m1-ft-analytics-analyst-pilot
owner: data-viz-designer-engineer
status: not_started
priority: p2
Research temporal axis grouping for weekly ticks and monthly labels
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.
Problem
Investigate how Vega-Lite and Dataface should support temporal axes where dense weekly ticks remain visible but higher-level month labels are shown as grouped or centered interval labels.
Context
During M1 structure-lab work, a recurring temporal-axis problem emerged:
- the chart may contain weekly data points or weekly bars
- we may want to keep the weekly tick rhythm visible
- but we do not want to label every week
- instead, we may want month labels that summarize or group the weekly cadence
The visual intent is not just "fewer labels." It is a richer temporal axis where:
- fine-grained weekly ticks still establish cadence and rhythm
- coarser month labels act like grouped interval labels
- those month labels may need to feel centered across the span of weeks they cover,
not pinned to a single weekly tick
This task is specifically a research task. The goal is to understand:
- what Vega-Lite already supports natively for this kind of axis treatment
- whether the right solution is a single axis, layered axes, or custom labeling
- what the cleanest Dataface integration path would be if we want this behavior
Relevant files and references:
dataface/core/render/chart/presentation.py
dataface/core/render/chart/standard_renderer.py
dataface/core/render/chart/DESIGN.md
examples/playground/faces/labs/m1-structure-bars-lines-lab.yml
- follow-on temporal semantics task:
./add-temporal-axis-label-semantics-for-point-vs-interval-positioning.md
Note:
- 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, treat
it as historical context and recreate the repro in a fresh playground face.
Possible Solutions
- Vega-Lite can do it natively with one axis.
This would be ideal if Vega-Lite already supports distinct tick cadence and
grouped/coarser labels on the same axis in a straightforward way.
- Vega-Lite can do it with layered/composed axes.
This is likely if the solution requires one axis for weekly ticks and another
overlaid axis for month labels or boundary annotations.
- Dataface would need custom axis augmentation on top of Vega-Lite.
This may be necessary if native Vega-Lite support is incomplete or too awkward.
- Recommended: research Vega-Lite first, then document the smallest viable
implementation path for Dataface.
The main research question is whether Vega-Lite already has a native pattern for
different date grouping and label positioning on the same axis, especially for
weekly ticks with monthly labels centered across spans.
Plan
- Inspect Vega-Lite's documented temporal-axis features relevant to:
- time units
- tick cadence
- label cadence
- multi-level or layered axes
- band/interval positioning
- Compare those capabilities against the desired weekly-tick / monthly-label
behavior.
- Identify whether the solution is:
- fully native
- native but awkward
- or requiring Dataface-side composition
- Record examples and a recommended integration path for DFT.
- Link the result back to the broader temporal-axis semantics work.
Implementation Progress
Not started.
March 26, 2026 notes:
- This task was opened from structure-lab critique while looking at weekly/temporal
labeling semantics.
- The main design question is not merely label density; it is grouped temporal
labeling and whether labels should be centered over the spans they summarize.
QA Exploration
N/A for now. This is a research task.
- [ ] QA exploration completed (or N/A for non-UI tasks)
Review Feedback
Not started.