Skip to content
TerraFluent
  • Solutions
    PDF Reporting True PDF files, zero dependencies HTML Reporting Print-ready HTML, no PDF engine DOCX Reporting Native Word documents Chart Reporting Server-side SVG charts
    View all solutions →
  • Docs
  • Samples
  • Compare
  • Enterprise
Get started
  1. Home
  2. Charts
  3. Accessibility and Culture
TerraFluent.Chart.Reporting

Accessibility and Culture

Every chart carries a <title> and <desc> and aria-labels by default. These examples override them, switch direction, and format for a non-English culture.

Read the reference documentation →

What to know

  • The chart is text, not a picture. Output is inline SVG whose labels, titles and legends are real <text> nodes. A screen reader reads them, a crawler indexes them, and Ctrl+F finds them — none of which is true of a chart shipped as a PNG.
  • Every chart is labelled by default. Each SVG gets a <title> and a <desc>, wired up with aria-labelledby and aria-describedby, and the <desc> summarises the series and value range in words. Override either when you have better context than the generator does.
  • Culture affects more than the decimal separator. Passing a CultureInfo changes number grouping, date formats and currency placement together, so a de-DE chart reads 1.234,5 and a date axis follows the same culture rather than drifting to the invariant format.
  • Right-to-left is a layout change, not a text change. RTL mirrors the axis order and legend placement as well as the label direction, which is what an Arabic or Hebrew reader expects.
  • Gaps must be a decision. GapPolicy decides whether a null breaks the line or is bridged. Leaving it implicit means a missing measurement and a measured zero can end up drawn the same way.
  • Colour is never the only channel. Marker symbols, fill patterns and the high-contrast theme keep series distinguishable for readers with colour-vision deficiency, and in greyscale print.

Custom ARIA Labels

AriaLabel() + AriaDescription() — custom accessible title and description.

Revenue chart for Q1 through Q4 2025 Bar chart showing quarterly revenue. Q1: $320k, Q2: $410k, Q3: $390k, Q4: $480k. Q4 was the strongest quarter with a 23% increase over Q1. Q1–Q4 Revenue Custom ARIA label and description override 0 100 200 300 400 Revenue ($k) Q1 Q2 Q3 Q4 Revenue terrafluent.dev terrafluent.dev

German Culture (de-DE)

Culture("de-DE") — number formatting uses comma decimal separator.

Umsatz nach Quartal — Culture("de-DE") — Achsenbeschriftungen im deutschen Zahlenformat Umsatz nach Quartal — Culture("de-DE") — Achsenbeschriftungen im deutschen Zahlenformat — Series: Produkt A, Trend. Categories: Q1, Q2, Q3, Q4. Values range from 1.2k to 1.7k. Umsatz nach Quartal Culture("de-DE") — Achsenbeschriftungen im deutschen Zahlenformat 0 500 1k 1,5k 2k Umsatz (€k) Q1 Q2 Q3 Q4 Produkt A Trend terrafluent.dev terrafluent.dev

Right-to-Left Chart

RightToLeft() — dir="rtl" on SVG root, direction:rtl CSS on all text.

المبيعات الفصلية — RightToLeft() — dir="rtl" ومحتوى عربي المبيعات الفصلية — RightToLeft() — dir="rtl" ومحتوى عربي — Series: المنتج أ, المنتج ب. Categories: الربع الأول, الربع الثاني, الربع الثالث, الربع الرابع. Values range from 210 to 480. المبيعات الفصلية RightToLeft() — dir="rtl" ومحتوى عربي 0 100 200 300 400 المبيعات الربع الأول الربع الثاني الربع الثالث الربع الرابع المنتج أ المنتج ب terrafluent.dev terrafluent.dev

Null-Gap Policy

NullGap() — Break (gap), Connect (bridge), Zero (baseline) for missing values.

Null-Gap Policy Comparison — Break (gap) vs Connect (bridge) vs Zero (baseline) for missing data points Null-Gap Policy Comparison — Break (gap) vs Connect (bridge) vs Zero (baseline) for missing data points — Series: Break (gap), Connect (bridge), Zero (baseline). Categories: Jan to Jun. Values range from 10 to 90. Null-Gap Policy Comparison Break (gap) vs Connect (bridge) vs Zero (baseline) for missing data points 0 20 40 60 80 100 Value Jan Feb Mar Apr May Jun Break (gap): 20 Break (gap): 60 Break (gap): 90 Connect (bridge): 30 Connect (bridge): 70 Connect (bridge): 80 Zero (baseline): 10 Zero (baseline): 0 Zero (baseline): 0 Zero (baseline): 50 Zero (baseline): 0 Zero (baseline): 70 Break (gap) Connect (bridge) Zero (baseline) terrafluent.dev terrafluent.dev

Keep going

All chart types and features The full gallery index — 26 chart types, eight feature groups, and the cookbook. Getting started Install the package and render your first chart in a few lines of C#. API reference Every builder method, series type, enum and theme in one page.

← Back to the full chart gallery

TerraFluent

Fluent .NET solutions for reporting and data visualization. Open source under the MIT license.

Solutions

  • All solutions
  • TerraFluent.Pdf.Reporting
  • TerraFluent.Html.Reporting
  • TerraFluent.Docx.Reporting
  • TerraFluent.Chart.Reporting
  • Getting started
  • Samples
  • Compare

Source & packages

  • Pdf.Reporting on GitHub
  • Html.Reporting on GitHub
  • Docx.Reporting on GitHub
  • Chart.Reporting on GitHub
  • Pdf.Reporting on NuGet
  • Html.Reporting on NuGet
  • Docx.Reporting on NuGet
  • Chart.Reporting on NuGet

Docs

  • Documentation
  • PDF Reporting docs
  • HTML Reporting docs
  • DOCX Reporting docs
  • Chart Reporting docs
  • Live sample reports
  • Live chart showcase

Project

  • Enterprise guide
  • Support
  • Security policy
  • Releases & versioning
  • Privacy

© 2026 TerraFluent. MIT licensed — free for personal, commercial, and open-source use.