Sections

This sample uses C# 13 preview features such as partial properties, it also uses features from the CommunityToolkit.Mvvm package, you can learn more about it here.

This web site wraps every sample using a UserControl instance, but LiveCharts controls can be used inside any container.

sample image

View model

using LiveChartsCore.Defaults;

namespace ViewModelsSamples.General.Sections2;

public class ViewModel
{
    public ObservablePoint[] Values { get; set; } = [
        new(2.2, 5.4), new(4.5, 2.5), new(4.2, 7.4),
        new(6.4, 9.9), new(4.2, 9.2), new(5.8, 3.5),
        new(7.3, 5.8), new(8.9, 3.9), new(6.1, 4.6),
        new(9.4, 7.7), new(8.4, 8.5), new(3.6, 9.6),
        new(4.4, 6.3), new(5.8, 4.8), new(6.9, 3.4),
        new(7.6, 1.8), new(8.3, 8.3), new(9.9, 5.2),
        new(8.1, 4.7), new(7.4, 3.9), new(6.8, 2.3)
    ];
}

XAML

<UserControl
    x:Class="WinUISample.General.Sections2.View"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:lvc="using:LiveChartsCore.SkiaSharpView.WinUI"
    xmlns:vms="using:ViewModelsSamples.General.Sections2"
    mc:Ignorable="d">

    <UserControl.DataContext>
        <vms:ViewModel/>
    </UserControl.DataContext>

    <lvc:CartesianChart>
        <lvc:CartesianChart.Series>
            <lvc:SeriesCollection>
                <lvc:XamlScatterSeries
                    Values="{Binding Values}"
                    GeometrySize="10"
                    Stroke="{lvc:SolidColorPaint Color='#00f'}"
                    Fill="{x:Null}"/>
            </lvc:SeriesCollection>
        </lvc:CartesianChart.Series>
        <lvc:CartesianChart.Sections>
            <lvc:SectionsCollection>
                <lvc:XamlRectangularSection
                    Yi="8"
                    Yj="8"
                    />
                <!--
                Nested extensions are not working in Uno

                 Stroke="{lvc:SolidColorPaint
                     Color='#F00',
                     StrokeWidth=3,
                     PathEffect={lvc:Dashed Array='6, 6'}}"
                -->
                <lvc:XamlRectangularSection
                    Xi="6"
                    Xj="8"
                    Fill="{lvc:SolidColorPaint Color='#300000FF'}"/>
            </lvc:SectionsCollection>
        </lvc:CartesianChart.Sections>
    </lvc:CartesianChart>
</UserControl>

Articles you might also find useful: