CodeBrix.Plotter.MitLicenseForever
1.0.226.244
See the version list below for details.
dotnet add package CodeBrix.Plotter.MitLicenseForever --version 1.0.226.244
NuGet\Install-Package CodeBrix.Plotter.MitLicenseForever -Version 1.0.226.244
<PackageReference Include="CodeBrix.Plotter.MitLicenseForever" Version="1.0.226.244" />
<PackageVersion Include="CodeBrix.Plotter.MitLicenseForever" Version="1.0.226.244" />
<PackageReference Include="CodeBrix.Plotter.MitLicenseForever" />
paket add CodeBrix.Plotter.MitLicenseForever --version 1.0.226.244
#r "nuget: CodeBrix.Plotter.MitLicenseForever, 1.0.226.244"
#:package CodeBrix.Plotter.MitLicenseForever@1.0.226.244
#addin nuget:?package=CodeBrix.Plotter.MitLicenseForever&version=1.0.226.244
#tool nuget:?package=CodeBrix.Plotter.MitLicenseForever&version=1.0.226.244
CodeBrix.Plotter
A fully managed, cross-platform plotting library for .NET that draws charts, graphs and plots onto a SkiaSharp canvas.
You describe a plot as a PlotModel — axes, series, annotations, legends — and CodeBrix.Plotter renders it, either straight onto an SKCanvas you already have or into a PNG, JPEG, PDF or SVG file.
CodeBrix.Plotter is a port of OxyPlot that combines the OxyPlot.Core and OxyPlot.SkiaSharp packages into a single library, and is provided as a .NET 10 library and associated CodeBrix.Plotter.MitLicenseForever NuGet package.
CodeBrix.Plotter's only dependencies are SkiaSharp and SkiaSharp.HarfBuzz, pinned to version 4.151.0 to match the rest of the CodeBrix family.
CodeBrix.Plotter supports applications and assemblies that target Microsoft .NET version 10.0 and later. Microsoft .NET version 10.0 is a Long-Term Supported (LTS) version of .NET, and was released on Nov 11, 2025; and will be actively supported by Microsoft until Nov 14, 2028. Please update your C#/.NET code and projects to the latest LTS version of Microsoft .NET.
CodeBrix.Plotter supports:
- Over 40 series types — line, area, bar, column, scatter, stem, stair-step, pie, heat map, contour, candlestick, box plot, error bar, histogram, rectangle, vector, tornado, two-color and extrapolation variants, and more
- Axis types — linear, logarithmic, date/time, time span, category, angle, magnitude, colour and range-colour axes, with full control over ticks, gridlines, formatting and zoom/pan limits
- Annotations — text, arrow, line, function, rectangle, ellipse, point, polygon, polyline, image and tile-map annotations
- Legends — placement inside or outside the plot area, multi-column layouts, item ordering and custom symbol rendering
- Rendering to a SkiaSharp canvas —
SkiaRenderContextimplementsIRenderContextagainst anySKCanvas, so a plot can be drawn into whatever surface your application already owns - Exporting — PNG, JPEG, PDF and SVG exporters built on SkiaSharp, plus a built-in dependency-free SVG writer inherited from OxyPlot core
- Text shaping — complex scripts are shaped through SkiaSharp.HarfBuzz
- An input and controller model — mouse, touch and keyboard gestures bound to pan, zoom, tracker and reset commands, ready to be wired to a host UI framework
- Image decoding — built-in PNG and BMP decoders and a PNG encoder, with no third-party imaging dependency
Sample Code
Building a plot and exporting it to a PNG file
using System.IO;
using CodeBrix.Plotter;
using CodeBrix.Plotter.Axes;
using CodeBrix.Plotter.Series;
using CodeBrix.Plotter.Skia;
var model = new PlotModel { Title = "Trigonometric functions" };
model.Axes.Add(new LinearAxis { Position = AxisPosition.Bottom, Title = "x" });
model.Axes.Add(new LinearAxis { Position = AxisPosition.Left, Title = "y" });
model.Series.Add(new FunctionSeries(Math.Sin, -10, 10, 0.05, "sin(x)"));
model.Series.Add(new FunctionSeries(Math.Cos, -10, 10, 0.05, "cos(x)")
{
Color = PlotterColors.IndianRed,
});
var exporter = new PngExporter { Width = 800, Height = 480 };
using var stream = File.Create("trig.png");
exporter.Export(model, stream);
Rendering onto an SKCanvas you already have
using CodeBrix.Plotter;
using CodeBrix.Plotter.Skia;
using SkiaSharp;
public void DrawPlot(SKCanvas canvas, PlotModel model, int width, int height)
{
using var renderContext = new SkiaRenderContext
{
RenderTarget = RenderTarget.Screen,
SkCanvas = canvas,
};
((IPlotModel)model).Update(true);
((IPlotModel)model).Render(renderContext, new PlotterRect(0, 0, width, height));
}
Adding data series from your own objects
using CodeBrix.Plotter;
using CodeBrix.Plotter.Series;
var series = new LineSeries
{
Title = "Measurements",
MarkerType = MarkerType.Circle,
MarkerSize = 3,
};
foreach (var reading in readings)
{
series.Points.Add(new DataPoint(reading.Time, reading.Value));
}
model.Series.Add(series);
Attribution
CodeBrix.Plotter is derived from OxyPlot, Copyright (c) 2014 OxyPlot contributors, used under the MIT License.
See THIRD-PARTY-NOTICES.txt for the full attribution, the exact upstream baseline, and the list of modifications made during the port.
License
The project is licensed under the MIT License. see: https://en.wikipedia.org/wiki/MIT_License
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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
- SkiaSharp (>= 4.151.0)
- SkiaSharp.HarfBuzz (>= 4.151.0)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on CodeBrix.Plotter.MitLicenseForever:
| Package | Downloads |
|---|---|
|
CodeBrix.Platform.PlotterView.ApacheLicenseForever
Adds an interactive chart control for plotting data in your app, with panning, zooming, and a click-to-inspect data tracker built in. Works with mouse, keyboard, and touch input alike. Supports line, bar, scatter, and dozens of other chart types, plus linear, logarithmic, date-time, and category axes. |
|
|
CodeBrix.Android.PlotterView.ApacheLicenseForever
The PlotterView add-in for CodeBrix.Android applications: the platform-neutral assembly of the CodeBrix.Platform PlotterView add-in and its Android implementation, so code and XAML written against the add-in run unchanged on Android. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.278.1156 | 121 | 10/5/2026 |
| 1.0.269.1424 | 122 | 9/26/2026 |
| 1.0.252.1250 | 133 | 9/9/2026 |
| 1.0.249.1348 | 113 | 9/6/2026 |
| 1.0.242.1416 | 114 | 8/30/2026 |
| 1.0.226.286 | 135 | 8/14/2026 |
| 1.0.226.244 | 110 | 8/14/2026 |