syncfusion-maui-toolkit-spark-charts

star 39

Use this skill ALWAYS when the user needs to implement Syncfusion MAUI Spark Charts. Triggers on spark chart, sparkline, micro-chart, trend visualization, data visualization in small spaces, chart types (line, area, column, win/loss), markers, range bands, axis configuration, data point styling. Also use immediately for chart customization, performance optimization, marker configuration, data binding patterns, accessibility needs.

syncfusion By syncfusion schedule Updated 6/5/2026

name: syncfusion-maui-toolkit-spark-charts description: Use this skill ALWAYS when the user needs to implement Syncfusion MAUI Spark Charts. Triggers on spark chart, sparkline, micro-chart, trend visualization, data visualization in small spaces, chart types (line, area, column, win/loss), markers, range bands, axis configuration, data point styling. Also use immediately for chart customization, performance optimization, marker configuration, data binding patterns, accessibility needs. metadata: author: "Syncfusion Inc" version: "1.0.0"

Implementing Syncfusion .NET MAUI Spark Charts

When to Use This Skill

Use this skill when implementing the SfSparkChart control in .NET MAUI applications. Spark Charts are lightweight, micro-visualization controls ideal for displaying data trends in compact spaces like dashboards, grids, and reports.

Key Scenarios:

  • Displaying quick data trends without consuming significant UI space
  • Visualizing sales trends, stock performance, or time-series data
  • Showing positive/negative values in Win/Loss scenarios
  • Creating dashboard components with multiple micro-charts
  • Highlighting specific data points (first, last, high, low, negative values)

Component Overview

The SfSparkChart is a compact charting control with four built-in chart types:

Chart Type Use Case Best For
SparkLineChart Line-based visualization Identifying trends and patterns
SparkAreaChart Filled area visualization Emphasizing magnitude of change
SparkColumnChart Vertical bar visualization Comparing different data values
SparkWinLossChart Win/Loss representation Showing positive/negative scenarios

Core Features:

  • Data binding to ObservableCollection, List, or IEnumerable
  • Four chart types for different visualization needs
  • Marker display and customization (Line/Area charts only)
  • Data point styling (first, last, high, low, negative)
  • Axis display and origin customization
  • Range band highlighting for value regions
  • Lightweight and performance-optimized for micro-visualizations

Documentation and Navigation Guide

Getting Started

๐Ÿ“„ Read: references/getting-started.md

  • Installation and NuGet package setup
  • Project configuration (MauiProgram.cs handler registration)
  • Basic SparkLineChart implementation
  • Namespace imports and first render
  • Data binding setup
  • Copy-paste-ready starter code

Chart Types

๐Ÿ“„ Read: references/chart-types.md

  • Choosing the right chart type for your data
  • SparkLineChart: Line-based trend visualization
  • SparkAreaChart: Filled area representation
  • SparkColumnChart: Vertical bar comparison
  • SparkWinLossChart: Win/Loss scenarios
  • When to use each type with code examples
  • Common type selection patterns

Markers and Labels

๐Ÿ“„ Read: references/markers-and-labels.md

  • Enabling markers on Line and Area charts
  • Marker shape types and customization
  • Marker styling properties (Fill, Stroke, StrokeWidth, Height, Width)
  • Marker positioning and visibility
  • Common marker patterns (highlighting endpoints, data points)
  • Performance considerations for marker display

Styling and Appearance

๐Ÿ“„ Read: references/styling-and-appearance.md

  • Data point styling and color customization
  • First, last, high, and low point highlighting
  • Negative value styling for Column and WinLoss charts
  • Brush and color properties
  • Padding and spacing configuration
  • Size customization and layout control
  • Advanced styling examples

Data Binding

๐Ÿ“„ Read: references/data-binding.md

  • Binding to ObservableCollection for reactive updates
  • Binding to List for static data
  • Binding to IEnumerable for LINQ queries
  • XBindingPath and YBindingPath configuration
  • Dynamic data source updates
  • Common binding patterns and best practices

Axis and Ranges

๐Ÿ“„ Read: references/axis-and-ranges.md

  • Enabling axis display (ShowAxis property)
  • Axis origin configuration for baseline reference
  • Axis types (Numeric, Category, DateTime)
  • XBindingPath property for category/time-based axes
  • Range band visualization (RangeBandStart, RangeBandEnd, RangeBandFill)
  • Axis line styling and customization
  • Highlighting value regions and thresholds

Quick Start Example

// Step 1: Configure handler in MauiProgram.cs
using Syncfusion.Maui.Toolkit.Hosting;

public static class MauiProgram
{
    public static MauiApp CreateMauiApp()
    {
        var builder = MauiApp.CreateBuilder();
        builder
            .UseMauiApp<App>()
            .ConfigureSyncfusionToolkit()
            .ConfigureFonts(fonts =>
            {
                fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
            });
        return builder.Build();
    }
}

// Step 2: Create basic SparkLineChart in XAML
<ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:sparkchart="clr-namespace:Syncfusion.Maui.Toolkit.SparkCharts;assembly=Syncfusion.Maui.Toolkit"
             x:Class="SparkChartDemo.MainPage">

    <sparkchart:SfSparkLineChart 
        ItemsSource="{Binding Data}" 
        YBindingPath="Value"
        ShowMarkers="True"
        HeightRequest="100"
        WidthRequest="150">
    </sparkchart:SfSparkLineChart>

</ContentPage>

// Step 3: Bind data from ViewModel
public class SparkDataViewModel
{
    public ObservableCollection<DataPoint> Data { get; set; }
    
    public SparkDataViewModel()
    {
        Data = new ObservableCollection<DataPoint>
        {
            new DataPoint { Value = 10 },
            new DataPoint { Value = 15 },
            new DataPoint { Value = 12 },
            new DataPoint { Value = 20 },
            new DataPoint { Value = 18 }
        };
    }
}

public class DataPoint
{
    public double Value { get; set; }
}

Common Patterns

Pattern 1: Dashboard Summary Card

// Show quick sales trend in a card
<sparkchart:SfSparkLineChart 
    ItemsSource="{Binding MonthlySales}" 
    YBindingPath="Amount"
    ShowMarkers="False"
    FirstPointFill="Blue"
    LastPointFill="Red">
</sparkchart:SfSparkLineChart>

Pattern 2: Performance Indicator with Threshold

// Highlight data within acceptable range using RangeBand
<sparkchart:SfSparkLineChart 
    ItemsSource="{Binding PerformanceMetrics}" 
    YBindingPath="Value"
    ShowAxis="True"
    RangeBandStart="50"
    RangeBandEnd="100"
    RangeBandFill="LightGreen">
</sparkchart:SfSparkLineChart>

Pattern 3: Win/Loss Visualization

// Show positive and negative outcomes
<sparkchart:SfSparkWinLossChart 
    ItemsSource="{Binding GameResults}" 
    YBindingPath="Result"
    NegativePointsFill="Red">
</sparkchart:SfSparkWinLossChart>

Pattern 4: Styled Data Points

// Emphasize critical data points
<sparkchart:SfSparkColumnChart 
    ItemsSource="{Binding MonthlyRevenue}" 
    YBindingPath="Revenue"
    FirstPointFill="Green"
    LastPointFill="Blue"
    HighPointFill="Gold"
    LowPointFill="Red"
    NegativePointsFill="DarkRed">
</sparkchart:SfSparkColumnChart>

Key Props Reference

Core Properties

Property Type Default Purpose
ItemsSource IEnumerable - Data source for chart
YBindingPath string - Property name for Y-axis values
XBindingPath string - Property name for X-axis values
Height double - Chart height in pixels
Width double - Chart width in pixels

Display Properties

Property Type Default Purpose
ShowMarkers bool false Display markers (Line/Area only)
ShowAxis bool false Display axis baseline
Padding Thickness 0 Space around chart content
AxisOrigin double - Y-axis value for axis line position

Styling Properties

Property Type Default Purpose
FirstPointFill Brush - Color of first data point
LastPointFill Brush - Color of last data point
HighPointFill Brush - Color of highest data point
LowPointFill Brush - Color of lowest data point
NegativePointsFill Brush - Color of negative values (Column/WinLoss)

Range Band Properties

Property Type Default Purpose
RangeBandStart double - Y-axis start value for range band
RangeBandEnd double - Y-axis end value for range band
RangeBandFill Brush - Color for range band region

Axis Properties

Property Type Default Purpose
AxisType SparkChartAxisType Numeric Axis scale type (Numeric, Category, DateTime)
AxisLineStyle SparkChartLineStyle - Axis appearance (Stroke, StrokeWidth, StrokeDashArray)

Marker Properties (Line/Area Only)

Property Type Default Purpose
MarkerSettings SparkChartMarkerSettings - Marker customization configuration

Common Challenges & Solutions

Issue: Chart appears empty

Causes: Missing ItemsSource binding, incorrect YBindingPath, data source is null
Solutions:

  1. Verify ItemsSource is properly bound to a populated collection
  2. Confirm YBindingPath matches your data property name exactly
  3. Check that data property is public and contains numeric values

Issue: Markers not showing

Note: Markers only work on Line and Area charts
Solutions:

  1. Verify you're using SfSparkLineChart or SfSparkAreaChart
  2. Set ShowMarkers="True" in XAML or code
  3. Check MarkerSettings are not hiding markers (verify Height/Width > 0)

Issue: Range band not visible

Solutions:

  1. Verify RangeBandStart < RangeBandEnd
  2. Ensure range values are within your data's Y-axis range
  3. Check RangeBandFill is not transparent

Issue: Poor performance with large datasets

Solutions:

  1. Consider displaying only recent data points
  2. Use aggregated data instead of raw values
  3. Avoid excessive marker styling on large datasets
  4. Disable ShowMarkers for performance-critical scenarios

Next Steps

Install via CLI
npx skills add https://github.com/syncfusion/maui-toolkit-ui-components-skills --skill syncfusion-maui-toolkit-spark-charts
Repository Details
star Stars 39
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator