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. Axes and Scales
TerraFluent.Chart.Reporting

Axes and Scales

Axis configuration is where most real charts need work — two series on incompatible scales, a log axis for a wide range, or a reference band the reader has to see.

Read the reference documentation →

Secondary Y-Axis

WithYAxis2() — columns on left axis, line on right axis.

Revenue & Profit Margin — WithYAxis2() — columns on left axis, line on right axis Revenue & Profit Margin — WithYAxis2() — columns on left axis, line on right axis — Series: Revenue, Margin %. Categories: Q1 2024 to Q4 2025. Values range from 22 to 540. Revenue & Profit Margin WithYAxis2() — columns on left axis, line on right axis 0 100 200 300 400 500 Revenue ($k) Q1 2024 Q2 2024 Q3 2024 Q4 2024 Q1 2025 Q2 2025 Q3 2025 Q4 2025 Quarter 0 10 20 30 40 50 Margin (%) Revenue: 310 Revenue: 390 Revenue: 420 Revenue: 510 Revenue: 340 Revenue: 430 Revenue: 460 Revenue: 540 Margin %: 22 Margin %: 28 Margin %: 25 Margin %: 31 Margin %: 24 Margin %: 32 Margin %: 30 Margin %: 35 Revenue Margin % terrafluent.dev terrafluent.dev

X-Axis Label Rotation

Axis.LabelRotation = -45 — diagonal labels.

Monthly Sales by Product — XAxis.LabelRotation = -45 — diagonal labels Monthly Sales by Product — XAxis.LabelRotation = -45 — diagonal labels — Series: Q1, Q2. Categories: Premium Enterprise Suite to Integration Gateway. Values range from 210 to 530. Monthly Sales by Product XAxis.LabelRotation = -45 — diagonal labels 0 100 200 300 400 500 Units Premium Enterprise Suite Developer Toolkit Pro Analytics Dashboard Integration Gateway Product Q1: 420 Q1: 380 Q1: 510 Q1: 290 Q1: 340 Q1: 210 Q1: 480 Q2: 460 Q2: 410 Q2: 530 Q2: 310 Q2: 380 Q2: 240 Q2: 520 Q1 Q2 terrafluent.dev terrafluent.dev

X-Axis Numeric Tick Interval

XAxisTickInterval — numeric X-axis with explicit tick spacing.

Numeric X-Axis with TickInterval = 5 — XAxisTickInterval(5) and XAxis.Min/Max drive evenly-spaced numeric ticks. Numeric X-Axis with TickInterval = 5 — XAxisTickInterval(5) and XAxis.Min/Max drive evenly-spaced numeric ticks. — Series: Signal. Values range from -1 to 1. Numeric X-Axis with TickInterval = 5 XAxisTickInterval(5) and XAxis.Min/Max drive evenly-spaced numeric ticks. -1.5 -1 -0.5 0 0.5 1 1.5 Amplitude 0 5 10 15 20 25 30 Time (s) Signal: 0 Signal: 0.87 Signal: 1 Signal: 0.5 Signal: -0.5 Signal: -1 Signal: -0.87 Signal: 0 Signal: 0.87 Signal: 1 Signal: 0.5 Signal: -0.5 Signal: -1 Signal: -0.87 Signal: 0 Signal: 0.87 Signal terrafluent.dev terrafluent.dev

Logarithmic Y Axis

YAxisLogarithmic() — base-10 log scale.

Exponential Growth on a Log Scale — Users over time — each decade evenly spaced Exponential Growth on a Log Scale — Users over time — each decade evenly spaced — Series: Users, Linear baseline. Categories: Q1 to Q8. Values range from 5 to 150k. Exponential Growth on a Log Scale Users over time — each decade evenly spaced 1 10 100 1k 10k 100k 1M Active Users Q1 Q2 Q3 Q4 Q5 Q6 Q7 Q8 Quarter Users: 5 Users: 30 Users: 120 Users: 600 Users: 2.5k Users: 9k Users: 40k Users: 150k Linear baseline: 5 Linear baseline: 12 Linear baseline: 25 Linear baseline: 50 Linear baseline: 100 Linear baseline: 200 Linear baseline: 400 Linear baseline: 800 Users Linear baseline terrafluent.dev terrafluent.dev

Date/Time X Axis

XAxisDateTime() — auto-formatted by span.

Weekly Site Visits — 2024 — Date/time X axis with auto-formatted, thinned labels Weekly Site Visits — 2024 — Date/time X axis with auto-formatted, thinned labels — Series: Visits. Categories: Jan 2024 to Dec 2024. Values range from 1.2k to 2.8k. Weekly Site Visits — 2024 Date/time X axis with auto-formatted, thinned labels 0 500 1k 1.5k 2k 2.5k Visits Jan 2024 Feb 2024 Mar 2024 Apr 2024 May 2024 Jun 2024 Jul 2024 Sep 2024 Oct 2024 Nov 2024 Dec 2024 Week Visits: 1.2k Visits: 1.3k Visits: 1.4k Visits: 1.3k Visits: 1.3k Visits: 1.4k Visits: 1.3k Visits: 1.4k Visits: 1.6k Visits: 1.7k Visits: 1.7k Visits: 1.9k Visits: 1.9k Visits: 1.8k Visits: 1.9k Visits: 1.9k Visits: 2.1k Visits: 2.1k Visits: 2.2k Visits: 2.1k Visits: 2.2k Visits: 2.2k Visits: 2.2k Visits: 2.2k Visits: 2.2k Visits: 2.1k Visits: 2.2k Visits: 2.1k Visits: 2.1k Visits: 2.2k Visits: 2.4k Visits: 2.3k Visits: 2.2k Visits: 2.2k Visits: 2.1k Visits: 2k Visits: 2.1k Visits: 2k Visits: 2.1k Visits: 2.2k Visits: 2.4k Visits: 2.4k Visits: 2.4k Visits: 2.3k Visits: 2.3k Visits: 2.5k Visits: 2.6k Visits: 2.6k Visits: 2.8k Visits: 2.7k Visits: 2.6k Visits: 2.8k Visits terrafluent.dev terrafluent.dev

Inverted Y-Axis

YAxisInverted() — minimum at the top, ranking style.

Race-to-Zero Leaderboard — YAxisInverted() — rank 1 at the top, higher rank numbers lower Race-to-Zero Leaderboard — YAxisInverted() — rank 1 at the top, higher rank numbers lower — Series: Position. Categories: Alice to Eve. Values range from 1 to 5. Race-to-Zero Leaderboard YAxisInverted() — rank 1 at the top, higher rank numbers lower 1 2 3 4 5 Rank Alice Bob Carol Dave Eve Position terrafluent.dev terrafluent.dev

Grid Lines Toggle

GridLines(false) / HideGridLines() — show or hide the background plot grid.

Grid Lines Visible — default — GridLines(true) Grid Lines Visible — default — GridLines(true) — Series: Revenue. Categories: Jan to Jun. Values range from 42 to 85. Grid Lines Visible default — GridLines(true) 0 20 40 60 80 Revenue ($k) Jan Feb Mar Apr May Jun Revenue: 42 Revenue: 58 Revenue: 51 Revenue: 67 Revenue: 72 Revenue: 85 Revenue terrafluent.dev terrafluent.dev Grid Lines Hidden — HideGridLines() Grid Lines Hidden — HideGridLines() — Series: Revenue. Categories: Jan to Jun. Values range from 42 to 85. Grid Lines Hidden HideGridLines() 0 20 40 60 80 Revenue ($k) Jan Feb Mar Apr May Jun Revenue: 42 Revenue: 58 Revenue: 51 Revenue: 67 Revenue: 72 Revenue: 85 Revenue terrafluent.dev terrafluent.dev

Plot Bands & Reference Lines

YAxis.PlotBands and YAxis.PlotLines.

Server Response Time — YAxis.PlotBands / PlotLines — target zones and thresholds Server Response Time — YAxis.PlotBands / PlotLines — target zones and thresholds — Series: p50, p99. Categories: 00 to 22. Values range from 72 to 780. Server Response Time YAxis.PlotBands / PlotLines — target zones and thresholds 0 200 400 600 ms 00 02 04 06 08 10 12 14 16 18 20 22 Hour Good Acceptable SLA limit p50: 85 p50: 78 p50: 72 p50: 90 p50: 145 p50: 220 p50: 310 p50: 280 p50: 195 p50: 160 p50: 130 p50: 105 p99: 210 p99: 185 p99: 170 p99: 240 p99: 420 p99: 610 p99: 780 p99: 720 p99: 490 p99: 380 p99: 290 p99: 230 p50 p99 terrafluent.dev terrafluent.dev

Threshold Zones

Zones() — recolour a line by value band.

Temperature Anomaly — Line recoloured by threshold — red below 0 °C, green above Temperature Anomaly — Line recoloured by threshold — red below 0 °C, green above — Series: Anomaly. Categories: Jan to Dec. Values range from -4.2 to 5.6. Temperature Anomaly Line recoloured by threshold — red below 0 °C, green above -4 -2 0 2 4 Δ °C Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Anomaly: -4.2 Anomaly: -3.1 Anomaly: -1 Anomaly: 1.8 Anomaly: 3.4 Anomaly: 4.9 Anomaly: 5.6 Anomaly: 4.1 Anomaly: 2 Anomaly: -0.5 Anomaly: -2.4 Anomaly: -3.8 Anomaly terrafluent.dev terrafluent.dev

Per-Series Target Lines

TargetLine() — horizontal reference lines scoped to a single series.

Monthly Sales vs Targets — TargetLine() — per-series reference lines at specific Y values Monthly Sales vs Targets — TargetLine() — per-series reference lines at specific Y values — Series: North, South. Categories: Jan to Jun. Values range from 55 to 112. Monthly Sales vs Targets TargetLine() — per-series reference lines at specific Y values 0 20 40 60 80 100 Revenue ($k) Jan Feb Mar Apr May Jun North target South target North: 82 North: 91 North: 78 North: 105 North: 112 North: 98 South: 55 South: 63 South: 70 South: 68 South: 74 South: 88 North South 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.