Dataface Tasks

Restructure chart family docs and navigation

IDGRAPH_LIBRARY-RESTRUCTURE_CHART_FAMILY_DOCS_AND_NAVIGATION
Statuscompleted
Priorityp1
Milestonem1-ft-analytics-analyst-pilot
Ownerdata-viz-designer-engineer
Completed byrj
Completed2026-03-20

Problem

Rework the chart docs navigation around chart families, build stable family pages for line graphs, sector charts, bar charts, maps, area charts, and point charts, fix related docs rendering issues, and establish the new Tables and Text framing.

Context

The chart docs had grown into a mixed taxonomy with legacy pages such as Chart Types, Pie And Donut Charts, More Chart Types, Map Charts, and Spark Charts (Sparklines). The goal was to replace that with a clearer family-based structure that readers can navigate more naturally.

Relevant work touched: - docs/docs/charts/*.md family pages and overview pages - docs/docs/charts/examples/** example files - docs/macros.py and docs/docs/stylesheets/example.css for example rendering - dataface/core/render/chart/standard_renderer.py and tests/core/test_vega_lite.py when docs work exposed renderer gaps

Constraints: - preserve the stable docs server workflow on port 8101 - keep family pages consistent where useful, but avoid forcing Vega-Lite-shaped structure onto non-Vega-Lite surfaces such as tables and text - use reader-facing terminology when clearer than raw API literals

Possible Solutions

  • Keep the existing page mix and polish it incrementally. Trade-off: lower effort up front, but readers still have to navigate a taxonomy built around leftovers and one-off pages.
  • Rework the docs around chart families and use one page as the structural template for the others. Recommended because it creates a stable information architecture, makes the docs easier to scan, and lets examples and field-reference sections follow a consistent pattern across families.
  • Mirror Vega-Lite internals directly in the docs. Trade-off: technically tidy, but too far from how Dataface readers think about chart selection and usage.

Plan

  1. Stabilize one family page first (Line Graphs) and turn it into the reference model.
  2. Clean up the chart navigation to reflect the target family structure.
  3. Build the remaining family pages using the shared template and a two-pass workflow: build pass, then audit pass.
  4. Fix any renderer or preview-system issues discovered while making the docs honest.
  5. Leave Tables and Text intentionally partial until its non-Vega-Lite structure is better defined.

Implementation Progress

  • Renamed and rebuilt Line Graphs as the stable family-page model.
  • Established and documented the shared chart-family template, including: mutually exclusive reference tables, example conventions, title-case rules, and the build-plus-audit workflow.
  • Reworked chart nav to the family structure: Bar Charts, Line Graphs, Sector Charts, Point Charts, Area Charts, Maps, Tables and Text, Chart Interactions.
  • Hid legacy transitional pages from nav (Chart Types, Pie And Donut Charts, More Chart Types, Spark Charts, template page).
  • Built and iterated the Sector Charts, Bar Charts, Maps, Area Charts, and Point Charts family pages.
  • Reframed Tables as Tables and Text and intentionally reduced the page to scoped top-level framing only.
  • Fixed docs preview/example issues: duplicate rendered-example IDs in docs/macros.py and fixed-height example panels in docs/docs/stylesheets/example.css.
  • Fixed renderer gaps discovered through docs work: enabled point/scatter and area passthrough support where needed, added streamgraph support via encoding.y.stack: center, and fixed categorical y inference for dot plots.
  • Added regression coverage in tests/core/test_vega_lite.py for the renderer fixes above.

QA Exploration

Used the local docs preview repeatedly with browser verification against http://localhost:8101/ pages for: - nav visibility and family ordering - example rendering and layout behavior - chart-specific example quality - stale-build / rebuild issues in the docs server flow

Notable bugs found and fixed during QA: - duplicate example YAML rendering blocks - fixed-height preview panels with excessive empty space - stale include rebuilds requiring clean server restarts - missing Connecticut in choropleth examples due to join-key mismatch - invisible dot-plot marks caused by scatter/point y type being forced quantitative

  • [x] QA exploration completed (or N/A for non-UI tasks)

Review Feedback

Docs-only work was iterated live with user review in-session rather than through a separate formal review pass. Follow-up changes from review included: - retitling and renaming line graph materials - tightening example structure and removing duplicated example blocks - improving title case and example-heading conventions - replacing poor example data with clearer teaching datasets - broadening the Tables and Text framing and hiding unfinished placeholder sections

  • [x] Review cleared