syncfusion-blazor-charts — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited syncfusion-blazor-charts (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
NuGet: Syncfusion.Blazor.Charts + Syncfusion.Blazor.Themes Namespace: Syncfusion.Blazor.Charts
A comprehensive guide for implementing the Syncfusion Blazor Chart component to create interactive, feature-rich data visualizations in Blazor applications. The Chart component supports 33+ chart types, multiple axes, advanced interactivity, and extensive customization options.
Use this skill when you need to:
The Syncfusion Blazor Chart component is a powerful data visualization tool that provides:
📄 Read: references/api-reference.md
CRITICAL: Use this reference FIRST for all API-related questions
Use this authoritative API reference when:
Topics covered:
Key Points:
RefreshAsync not Refresh)@ref to access chart instance for method callsSyncfusion.Blazor.Charts📄 Read: references/getting-started.md
Use this when:
Topics covered:
#### Common Chart Types
📄 Read: references/chart-types-common.md
Use this for frequently-used chart types:
Topics covered:
#### Specialized Chart Types
📄 Read: references/chart-types-specialized.md
Use this for specialized visualization needs:
Topics covered:
📄 Read: references/axes-and-scales.md
Use this when:
Topics covered:
📄 Read: references/data-handling.md
Use this when:
Topics covered:
📄 Read: references/visual-elements.md
Use this when:
Topics covered:
📄 Read: references/legend.md
Use this when:
Topics covered:
📄 Read: references/interactive-features.md
Use this when:
Topics covered:
📄 Read: references/appearance-styling.md
Use this when:
Topics covered:
📄 Read: references/advanced-features.md
Use this when:
Topics covered:
📄 Read: references/accessibility-internationalization.md
Use this when:
Topics covered:
📄 Read: references/events.md
Use this when:
Topics covered:
📄 Read: references/practical-examples.md
Use this for common implementation scenarios:
Topics covered:
The SfChart component provides several public methods for programmatic control. Always use @ref to access these methods:
<SfChart @ref="ChartRef">
<!-- Configuration -->
</SfChart>
@code {
SfChart ChartRef;
// Refresh the chart
async Task RefreshChart() => await ChartRef.RefreshAsync();
// Export the chart
async Task ExportChart() => await ChartRef.ExportAsync(ExportType.PNG, "chart.png");
// Print the chart
async Task PrintChart() => await ChartRef.PrintAsync();
// Show/Hide tooltip
void ShowChartTooltip() => ChartRef.ShowTooltip("January", 35);
void HideChartTooltip() => ChartRef.HideTooltip();
// Show/Hide crosshair
void ShowChartCrosshair() => ChartRef.ShowCrosshair(100, 50);
void HideChartCrosshair() => ChartRef.HideCrosshair();
// Selection control
void ClearSelections() => ChartRef.ClearSelection();
// Sorting
void SortData() => ChartRef.Sort("YValue", ListSortDirection.Descending);
void ClearChartSort() => ChartRef.ClearSort();
}See [references/api-reference.md](references/api-reference.md) for complete method documentation.
Syncfusion Blazor Charts requires FULLY QUALIFIED enum names:
<!-- ✅ CORRECT - Use full namespace -->
<ChartPrimaryXAxis ValueType="Syncfusion.Blazor.Charts.ValueType.Category" />
<ChartSeries Type="Syncfusion.Blazor.Charts.ChartSeriesType.Column" />
<!-- ❌ WRONG - Short form will cause errors -->
<ChartPrimaryXAxis ValueType="ValueType.Category" />
<ChartSeries Type="ChartSeriesType.Column" />Always use `Syncfusion.Blazor.Charts.` prefix for:
ValueType (Category, Double, DateTime, etc.)ChartSeriesType (Column, Line, Area, etc.)LegendPosition, SelectionMode, ZoomMode, ChartShape, etc.⚠️ Common Property Errors to Avoid:
#### ChartCrosshairLine - Limited Properties
<!-- ✅ CORRECT - Only Width and Color supported -->
<ChartCrosshairSettings Enable="true">
<ChartCrosshairLine Width="1" Color="#666"></ChartCrosshairLine>
</ChartCrosshairSettings>
<!-- ❌ WRONG - DashArray NOT supported on ChartCrosshairLine -->
<ChartCrosshairLine Width="1" Color="#666" DashArray="5,5"></ChartCrosshairLine>Supported ChartCrosshairLine Properties:
Width - Line width (number)Color - Line color (string)NOT Supported:
DashArray - Will cause runtime errorOpacity - Not available on this component#### Striplines - Use Plural Form
<!-- ✅ CORRECT - ChartStriplines (plural) -->
<ChartPrimaryYAxis>
<ChartStriplines>
<ChartStripline Start="50" End="60" Color="red" />
</ChartStriplines>
</ChartPrimaryYAxis>
<!-- ❌ WRONG - ChartAxisStripLineSettings does not exist -->
<ChartAxisStripLineSettings>
<ChartAxisStripLine Start="50" End="60" />
</ChartAxisStripLineSettings>Before deploying, verify:
Syncfusion.Blazor.Charts. prefix<ChartStriplines> and <ChartStripline>@ref for method accessHere's a minimal example to create a column chart with data:
@page "/chart-demo"
@using Syncfusion.Blazor.Charts
<SfChart Title="Sales Analysis">
<ChartPrimaryXAxis Title="Month" ValueType="Syncfusion.Blazor.Charts.ValueType.Category">
</ChartPrimaryXAxis>
<ChartPrimaryYAxis Title="Sales in Dollar">
</ChartPrimaryYAxis>
<ChartTooltipSettings Enable="true"></ChartTooltipSettings>
<ChartSeriesCollection>
<ChartSeries DataSource="@SalesData"
Name="Sales"
XName="Month"
YName="SalesValue"
Type="Syncfusion.Blazor.Charts.ChartSeriesType.Column">
<ChartMarker>
<ChartDataLabel Visible="true"></ChartDataLabel>
</ChartMarker>
</ChartSeries>
</ChartSeriesCollection>
</SfChart>
@code {
public class SalesInfo
{
public string Month { get; set; }
public double SalesValue { get; set; }
}
public List<SalesInfo> SalesData = new List<SalesInfo>
{
new SalesInfo { Month = "Jan", SalesValue = 35 },
new SalesInfo { Month = "Feb", SalesValue = 28 },
new SalesInfo { Month = "Mar", SalesValue = 34 },
new SalesInfo { Month = "Apr", SalesValue = 32 },
new SalesInfo { Month = "May", SalesValue = 40 },
new SalesInfo { Month = "Jun", SalesValue = 32 }
};
}Prerequisites:
Syncfusion.Blazor.Charts NuGet package@using Syncfusion.Blazor.Charts to _Imports.razorbuilder.Services.AddSyncfusionBlazor(); in Program.csApp.razor<SfChart Title="Product Sales Comparison">
<ChartPrimaryXAxis ValueType="Syncfusion.Blazor.Charts.ValueType.Category"></ChartPrimaryXAxis>
<ChartSeriesCollection>
<ChartSeries DataSource="@Product1Sales" XName="Month" YName="Sales"
Name="Product 1" Type="Syncfusion.Blazor.Charts.ChartSeriesType.Column">
</ChartSeries>
<ChartSeries DataSource="@Product2Sales" XName="Month" YName="Sales"
Name="Product 2" Type="Syncfusion.Blazor.Charts.ChartSeriesType.Column">
</ChartSeries>
</ChartSeriesCollection>
<ChartLegendSettings Visible="true"></ChartLegendSettings>
</SfChart><SfChart>
<ChartPrimaryXAxis ValueType="Syncfusion.Blazor.Charts.ValueType.DateTime"
Title="Date">
</ChartPrimaryXAxis>
<ChartZoomSettings EnableSelectionZooming="true"
EnablePan="true"
EnableMouseWheelZooming="true">
</ChartZoomSettings>
<ChartSeriesCollection>
<ChartSeries DataSource="@TimeSeriesData"
XName="Date"
YName="Value"
Type="Syncfusion.Blazor.Charts.ChartSeriesType.Line">
</ChartSeries>
</ChartSeriesCollection>
</SfChart><SfChart Title="Resource Allocation">
<ChartPrimaryXAxis ValueType="Syncfusion.Blazor.Charts.ValueType.Category"></ChartPrimaryXAxis>
<ChartSeriesCollection>
<ChartSeries DataSource="@ResourceData1" XName="Period" YName="Hours"
Name="Development" Type="Syncfusion.Blazor.Charts.ChartSeriesType.StackingArea">
</ChartSeries>
<ChartSeries DataSource="@ResourceData2" XName="Period" YName="Hours"
Name="Testing" Type="Syncfusion.Blazor.Charts.ChartSeriesType.StackingArea">
</ChartSeries>
<ChartSeries DataSource="@ResourceData3" XName="Period" YName="Hours"
Name="Documentation" Type="Syncfusion.Blazor.Charts.ChartSeriesType.StackingArea">
</ChartSeries>
</ChartSeriesCollection>
<ChartLegendSettings Visible="true" Position="Syncfusion.Blazor.Charts.LegendPosition.Bottom">
</ChartLegendSettings>
</SfChart>SfChart)Title - Chart title textWidth / Height - Chart dimensions (accepts px or %, default: "100%")Theme - Visual theme (see Theme enum in API reference)Background - Chart background colorEnableAnimation - Enable/disable animation (default: true)SelectionMode - Selection mode (None, Series, Point, Cluster, DragXY, DragX, DragY, Lasso)HighlightMode - Highlight mode (None, Series, Point, Cluster)ChartPrimaryXAxis, ChartPrimaryYAxis)ValueType - Axis type: Syncfusion.Blazor.Charts.ValueType.Category, ValueType.Double, ValueType.DateTime, ValueType.Logarithmic, ValueType.DateTimeCategoryTitle - Axis titleMinimum / Maximum - Axis rangeInterval - Spacing between labelsLabelFormat - Format string for labels (e.g., "C0", "N2", "dd MMM")EdgeLabelPlacement - Edge label handling (None, Hide, Shift)LabelIntersectAction - Label intersection handling (None, Hide, Trim, Wrap, MultipleRows, Rotate45, Rotate90)<ChartStriplines> (plural) for horizontal/vertical bandsChartSeries)DataSource - Data collection (IEnumerable<object>)XName / YName - Property names for X and Y values (case-sensitive)Type - Chart type: Syncfusion.Blazor.Charts.ChartSeriesType.Column, ChartSeriesType.Line, etc. (see API reference)Name - Series name for legendFill - Series color (CSS color string)Width - Line/border width (pixels)DashArray - Dash pattern (e.g., "5,5")Opacity - Transparency (0 to 1)ChartTooltipSettings - Tooltip configurationEnable - Show/hide tooltipShared - Enable shared tooltip for multiple seriesFormat - Custom tooltip formatTemplate - Custom tooltip template (RenderFragment)ChartZoomSettings - Zoom and pan optionsEnableSelectionZooming - Enable selection-based zoomEnableMouseWheelZooming - Enable mouse wheel zoomEnablePinchZooming - Enable pinch zoom (touch devices)EnablePan - Enable panningMode - Zoom mode (X, Y, XY)SelectionMode - Selection behavior (see SelectionMode enum)ChartCrosshairSettings - Crosshair configurationEnable - Show/hide crosshairLineType - Crosshair line type (Vertical, Horizontal, Both)ChartCrosshairLine - Line style (Width, Color ONLY - NO DashArray)ChartMarker - Data point markersVisible - Show/hide markersShape - Marker shape (see ChartShape enum)Width / Height - Marker dimensionsChartDataLabel - Data labels on pointsVisible - Show/hide labelsPosition - Label positionTemplate - Custom label templateChartLegendSettings - Legend configurationVisible - Show/hide legendPosition - Legend position (see LegendPosition enum)ChartAnnotations - Custom annotations~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.