Charts & Dashboard Widgets

A dashboard analytics toolkit for Blazor — 8 chart types and 7 pre-composed dashboard widgets. Native SVG rendering with zero JavaScript dependencies.

Chart Types

ChartComponentTier
Line / AreaHelixLineChart<T>Community (Free)
Bar / ColumnHelixBarChart<T>Community (Free)
Pie / DonutHelixPieChart<T>Community (Free)
Scatter / BubbleHelixScatterChart<T>Community (Free)
Candlestick (OHLC)HelixCandlestickChart<T>Pro
Radar / SpiderHelixRadarChart<T>Pro
GaugeHelixGaugeChartPro
HeatmapHelixHeatmap<T>Pro

Dashboard Widgets

WidgetComponentDescription
SparklineHelixSparklineInline mini chart, no axes
KPI CardHelixKpiCardValue + delta + sparkline + footer
Delta IndicatorHelixDeltaIndicatorUp/down arrow with percentage
Progress BarHelixProgressBarLinear progress with thresholds
Bar ListHelixBarList<T>Horizontal bar ranking
TrackerHelixTrackerGitHub-style contribution grid
Category BarHelixCategoryBar<T>Segmented horizontal bar

Live Demo

Charts & Dashboard Demo Open in new tab ↗
Loading Blazor demo...

Shared Parameters

All chart components inherit from ChartBase<T> and share these parameters:

ParameterTypeDefaultDescription
DataIReadOnlyList<T>The data to visualize
Widthdouble600Chart width in pixels
Heightdouble300Chart height in pixels
Titlestring?nullChart title
Subtitlestring?nullSubtitle below title
ShowGridbooltrueShow grid lines
ShowLegendbooltrueShow legend
LegendPositionstring”bottom”top/bottom/left/right
AnimateOnLoadbooltrueAnimate on first render
YAxisMin / YAxisMaxdouble?nullManual axis range
YAxisFormatStringstring?nullFormat (e.g., “C0”, “P1”)
ShowDataLabelsboolfalseValue labels on data points
OnPointClickEventCallback<T>Click event on data point
LoadingboolfalseShow loading skeleton
AriaLabelstring?nullScreen reader label
FormatProviderIFormatProvider?nullCulture for formatting

Series Configuration

var series = new List<SeriesConfig<SalesRecord>>
{
    new()
    {
        Name = "Revenue",         // Legend label
        Field = d => d.Revenue,   // Y-value selector
        Color = "primary",        // Color name or CSS
        StrokeWidth = 2,          // Line width
        ShowArea = true,          // Fill below line
        AreaOpacity = 0.15,       // Fill opacity
        Dashed = false,           // Dashed line
        ShowPoints = true,        // Data point dots
        PointRadius = 3,          // Dot size
        PointShape = "circle",    // circle/square/diamond/triangle
        CurveType = "linear",     // linear/smooth/step
    }
};

Color Palettes

7 built-in palettes:

ChartPalette.Default    // Theme token colors
ChartPalette.Cool       // Blues and greens
ChartPalette.Warm       // Reds and oranges
ChartPalette.Monochrome // Grays
ChartPalette.Pastel     // Soft colors
ChartPalette.Vibrant    // Saturated
ChartPalette.Accessible // Okabe-Ito (color-blind safe)

Accessibility

Every chart automatically includes:

  • role="figure" and aria-label on the SVG
  • Hidden <table> with all data for screen readers
  • Animations respect prefers-reduced-motion