Skip to main content

Polar chart

info

Charts are available with Avalonia Pro.

PolarChart hosts one or more PolarLineSeries and maps each point using an angle and a radius rather than Cartesian axes.

When to use

  • Mathematical curves: Draw spirals, rose curves, cardioids, and similar functions.
  • Directional measurements: Plot values around a full angular range.
  • Radial analysis: Use free-form angles when fixed radar spokes are too restrictive.

Code example

XAML

<charts:PolarChart Title="Archimedean spiral" Height="300">
<charts:PolarChart.Series>
<charts:PolarLineSeries ItemsSource="{Binding SpiralData}"
AnglePath="Angle"
RadiusPath="Radius"
StrokeThickness="2" />
</charts:PolarChart.Series>
</charts:PolarChart>

Data model (C#)

public record PolarPoint(double Angle, double Radius);

public ObservableCollection<PolarPoint> SpiralData { get; } = new()
{
new(0, 0),
new(45, 10),
new(90, 20),
new(135, 30)
};

Common properties (PolarChart)

PropertyDescriptionDefault
SeriesContent collection of PolarLineSeries items.Empty collection
ShowGridLinesWhether to draw angular and radial grid lines.true
GridLineBrushBrush used for the grid.null
GridLineStrokeThicknessThickness of the grid lines.1.0
RadiusAxisMinMinimum value of the radius axis.0.0
RadiusAxisMaxMaximum value of the radius axis. When NaN, the chart computes it from the data.NaN
StartAngleVisual start angle in degrees.-90.0
IsHighlightEnabledEnables chart-level hover highlighting for polar points.false

Common properties (PolarLineSeries)

PropertyDescriptionDefault
ItemsSourceCollection of polar data points.null
AnglePathPath to the angle value in degrees.null
RadiusPathPath to the radius value.null
ShowMarkersWhether to draw markers at each point.false
MarkerSizeMarker size in pixels.8.0
IsClosedWhether to connect the last point back to the first point.false

See also