MatPlotLibNet.Avalonia
1.17.1
dotnet add package MatPlotLibNet.Avalonia --version 1.17.1
NuGet\Install-Package MatPlotLibNet.Avalonia -Version 1.17.1
<PackageReference Include="MatPlotLibNet.Avalonia" Version="1.17.1" />
<PackageVersion Include="MatPlotLibNet.Avalonia" Version="1.17.1" />
<PackageReference Include="MatPlotLibNet.Avalonia" />
paket add MatPlotLibNet.Avalonia --version 1.17.1
#r "nuget: MatPlotLibNet.Avalonia, 1.17.1"
#:package MatPlotLibNet.Avalonia@1.17.1
#addin nuget:?package=MatPlotLibNet.Avalonia&version=1.17.1
#tool nuget:?package=MatPlotLibNet.Avalonia&version=1.17.1
MatPlotLibNet.Avalonia
Avalonia 12 chart control for MatPlotLibNet.
It renders charts natively with SkiaSharp. It does not need JavaScript, a browser, or SignalR.
Installation
dotnet add package MatPlotLibNet.Avalonia
Basic usage
<local:MplChartControl Figure="{Binding MyFigure}" />
// Code-behind / ViewModel
var figure = Plt.Create()
.Plot([1.0, 2.0, 3.0], [4.0, 2.0, 5.0])
.WithTitle("Hello Avalonia")
.Build();
MyFigure = figure;
Interactive mode
Set IsInteractive="True" and the control handles pan, zoom, reset, and brush-select locally:
<local:MplChartControl
Figure="{Binding MyFigure}"
IsInteractive="True" />
| Gesture | Action |
|---|---|
| Left-drag | Pan |
| Scroll wheel | Zoom (cursor-centered) |
| Double-click | Reset to original limits |
| Home / Escape | Reset to original limits |
| Shift + left-drag | Brush select (fires BrushSelectEvent to your custom sink) |
Custom event sink (server mode)
For SignalR-connected charts, construct the InteractionController with your own sink:
var ctrl = InteractionController.Create(figure, layout, evt =>
{
hubConnection.SendAsync("ApplyEvent", evt);
});
Requirements
- .NET 8 or .NET 10
- Avalonia 12 with Skia backend (the default on all platforms)
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Avalonia (>= 12.1.2)
- Avalonia.Skia (>= 12.1.2)
- MatPlotLibNet.Skia (>= 1.17.1)
- SkiaSharp (>= 3.119.4)
-
net8.0
- Avalonia (>= 12.1.2)
- Avalonia.Skia (>= 12.1.2)
- MatPlotLibNet.Skia (>= 1.17.1)
- SkiaSharp (>= 3.119.4)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.17.1 | 89 | 9/13/2026 |
| 1.17.0 | 93 | 9/12/2026 |
| 1.16.0 | 89 | 9/12/2026 |
| 1.15.1 | 90 | 9/12/2026 |
| 1.15.0 | 86 | 9/11/2026 |
| 1.14.4 | 93 | 9/11/2026 |
| 1.14.3 | 100 | 8/30/2026 |
| 1.14.2 | 183 | 8/17/2026 |
| 1.14.1 | 113 | 8/15/2026 |
| 1.14.0 | 120 | 7/12/2026 |
| 1.13.0 | 116 | 7/4/2026 |
| 1.12.0 | 117 | 6/30/2026 |
| 1.11.2 | 81 | 5/16/2026 |
| 1.11.1 | 75 | 5/16/2026 |
| 1.10.0 | 76 | 5/4/2026 |
| 1.9.0 | 83 | 4/23/2026 |
| 1.8.0 | 77 | 4/22/2026 |
| 1.7.3 | 78 | 4/21/2026 |
| 1.7.2 | 75 | 4/18/2026 |
| 1.7.1 | 75 | 4/18/2026 |
MatPlotLibNet 1.17.1. What changed in this release, and in every release before it, is written out in the changelog: https://github.com/xkqg/MatPlotLibNet/blob/main/CHANGELOG.md#1171