Charts

Charts is Apple’s declarative charting framework. tswift models its focused 2D surface as a render-host API: Chart and its marks evaluate into the shared SwiftUI UIIR tree, so a host can render them without giving the interpreter a separate chart IR or native Apple framework dependency.

Current status: the focused 2D chart surface and both render hosts are shipped. Chart, its seven common marks, plottable values, mark styling, chart modifiers, and axis-content leaves all produce structured UIIR values. The web host renders deterministic SVG; the iOS host lowers to native Charts.

The coverage reference calls the 58 registered members partial because the website reserves ✅ for APIs exercised by a tagged golden fixture. The remaining two scoped members are Chart.body and View.chartGesture.

Legend: ✅ Implemented · 🟡 Partial · ⬜ Missing · 🚫 Out of scope. Member counts below are generated by python3 tools/framework-inventory/coverage.py --framework charts --emit-json — nothing on this page is hand-typed.

Charts0%–87%

0 implemented · 58 partial · 9 missing (67 total)

7 additional members are out of scope.

Chart (2)

  • bodyvarMissing
  • initinitPartial

BarMark (1)

  • initinitPartial

PlottableValue (1)

  • valuefuncPartial

LineMark (1)

  • initinitPartial

PointMark (1)

  • initinitPartial

AreaMark (1)

  • initinitPartial

RuleMark (1)

  • initinitPartial

RectangleMark (1)

  • initinitPartial

SectorMark (1)

  • initinitPartial

ChartContent (21)

  • accessibilityHiddenfuncPartial
  • accessibilityIdentifierfuncPartial
  • accessibilityLabelfuncPartial
  • accessibilityValuefuncPartial
  • alignsMarkStylesWithPlotAreafuncPartial
  • annotationfuncPartial
  • blurfuncPartial
  • clipShapefuncPartial
  • compositingLayerfuncPartial
  • cornerRadiusfuncPartial
  • foregroundStylefuncPartial
  • interpolationMethodfuncPartial
  • lineStylefuncPartial
  • maskfuncPartial
  • offsetfuncPartial
  • opacityfuncPartial
  • positionfuncPartial
  • shadowfuncPartial
  • symbolfuncPartial
  • symbolSizefuncPartial
  • zIndexfuncPartial

View (32)

  • chart3DCameraProjectionfuncOut of scope
  • chart3DPosefuncOut of scope
  • chart3DRenderingStylefuncOut of scope
  • chartAngleSelectionfuncPartial
  • chartBackgroundfuncPartial
  • chartForegroundStyleScalefuncPartial
  • chartGesturefuncMissing
  • chartLegendfuncPartial
  • chartLineStyleScalefuncPartial
  • chartOverlayfuncPartial
  • chartPlotStylefuncPartial
  • chartScrollPositionfuncPartial
  • chartScrollTargetBehaviorfuncPartial
  • chartScrollableAxesfuncPartial
  • chartSymbolScalefuncPartial
  • chartSymbolSizeScalefuncPartial
  • chartXAxisfuncPartial
  • chartXAxisLabelfuncPartial
  • chartXAxisStylefuncPartial
  • chartXScalefuncPartial
  • chartXSelectionfuncPartial
  • chartXVisibleDomainfuncPartial
  • chartYAxisfuncPartial
  • chartYAxisLabelfuncPartial
  • chartYAxisStylefuncPartial
  • chartYScalefuncPartial
  • chartYSelectionfuncPartial
  • chartYVisibleDomainfuncPartial
  • chartZAxisfuncOut of scope
  • chartZAxisLabelfuncOut of scope
  • chartZScalefuncOut of scope
  • chartZSelectionfuncOut of scope

AxisMarks (1)

  • initinitPartial

AxisGridLine (1)

  • initinitPartial

AxisTick (1)

  • initinitPartial

AxisValueLabel (1)

  • initinitPartial

What’s wired

Scope

This inventory intentionally covers the practical 2D render-host surface, not the whole Apple Charts SDK. RealityKit and visionOS-only 3D charts — including Chart3D, camera poses, 3D rendering styles, and Z-axis APIs — are out of scope. They are explicitly counted separately rather than implying support.

Both hosts deliberately expose an honest fidelity tier: the web renderer is an SVG approximation rather than pixel-identical native Charts, while iOS uses best-effort lowering for some modifier forms. The remaining scoped API gaps are Chart.body and View.chartGesture.