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 ContentPage instance, but LiveCharts controls can be used inside any container.
View model
using SkiaSharp;
using LiveChartsCore.Defaults;
using LiveChartsCore.SkiaSharpView;
using LiveChartsCore.SkiaSharpView.Painting;
using LiveChartsCore.SkiaSharpView.Painting.Effects;
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)
];
public RectangularSection[] Sections { get; set; } = [
new RectangularSection
{
Yi = 8,
Yj = 8,
Stroke = new SolidColorPaint
{
Color = SKColors.Red,
StrokeThickness = 3,
PathEffect = new DashEffect([6, 6])
}
},
new RectangularSection
{
Xi = 4,
Xj = 6,
Fill = new SolidColorPaint(SKColors.Blue.WithAlpha(20))
},
];
}
XAML
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage
x:Class="MauiSample.General.Sections2.View"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:lvc="clr-namespace:LiveChartsCore.SkiaSharpView.Maui;assembly=LiveChartsCore.SkiaSharpView.Maui"
xmlns:vms="clr-namespace:ViewModelsSamples.General.Sections2;assembly=ViewModelsSamples"
x:DataType="vms:ViewModel">
<ContentPage.BindingContext>
<vms:ViewModel/>
</ContentPage.BindingContext>
<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"
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>
</ContentPage>