The radar chart (also known as spider or star chart) is a two-dimensional chart that shows the relationship between three or more variables represented on axes starting from the same point.
There are two types of radar charts - single and multi measure. Single measure radar charts are used when you want to compare values with common measurement and magnitude. The following picture shows a multi vitamin comparison chart that compares the ingredients of two sample multi vitamins as percentage of daily intake:
Multi measure radar charts are used when you want to compare values that differ in magnitude and/or measure. The following picture shows a radar chart that compares Montana counties by several parameters such as population, housing units, water etc.
As clear from the above picture different county parameters differ in both measure and magnitude. By default when you create a radar chart panel it will be configured as single measure radar. To switch to multi measure radar chart you must set the RadarMode property to RadarMode.MultiMeasure. The following code snippet shows how to do that:
C# |
Copy Code
|
NRadarChart radarChart = new NRadarChart(); radarChart.RadarMode = RadarMode.MultiMeasure; nChartControl1.Panels.Add(radarChart);
|
Visual Basic |
Copy Code
|
Dim radarChart As New NRadarChart
radarChart.RadarMode = RadarMode.MultiMeasure
NChartControl1.Panels.Add(radarChart)
|
Each radar axis can be annotated with text labels. Those labels appear on the outer side of the radar rim and there are various properties you can touch to modify their appearance and alignment. This section describes those properties and how they work together.
Title Angle
The radar axis title angle is controlled from the TitleAngle property, which accepts an object of type NScaleLabelAngle. For more information take a look at the Scale Label Style topic which discusses how to configure the angle properties. The following code snippet applies horizontal orientation to the radar label:
C# |
Copy Code
|
NRadarAxis radarAxis = new NRadarAxis();
radarAxis.Title = "Radar Axis";
radarAxis.TitleAngle = new NScaleLabelAngle(ScaleLabelAngleMode.View, 0);
radarChart.Axes.Add(radarAxis);
|
Visual Basic |
Copy Code
|
Dim radarAxis As NRadarAxis = New NRadarAxis()
radarAxis.Title = "Radar Axis" radarAxis.TitleAngle = New NScaleLabelAngle(ScaleLabelAngleMode.View, 0)
radarChart.Axes.Add(radarAxis)
|
Title Offset
The title offset controls the distance between the radar axis title and the outer radar rim. Increasing this value will move the radar axis titles farther from the radar plot - the following code snippet applied a distance of 20pt between the radar rim and the title:
C# |
Copy Code
|
Dim radarAxis As NRadarAxis = New NRadarAxis()
radarAxis.Title = "Radar Axis" radarAxis.TitleOffset = New NLength(20)
radarChart.Axes.Add(radarAxis)
|
Visual Basic |
Copy Code
|
Dim radarAxis As NRadarAxis = New NRadarAxis()
radarAxis.Title = "Radar Axis" radarAxis.TitleOffset = New NLength(20)
radarChart.Axes.Add(radarAxis)
|
Title Position Mode
The title position mode specifies how the title is positioned relative to the ray defined from the center of the radar chart and the radar axis. There are two options:
RadarTitlePositionMode |
Description |
Center |
Title is positioned so that its center point lies on the radar axis vector (this is the default) |
NearestPoint |
Title is positioned so that the nearest point of the title that does not touch the radar rim lies on the radar axis vector |
The following pictures show how the labels will be positioned depending on the value of hte TitlePositionMode property:
Center |
NearestPoint |
|
|
The following code snippet modifies the radar title position mode:
C# |
Copy Code
|
NRadarAxis radarAxis = new NRadarAxis();
radarAxis.Title = "Radar Axis";
radarAxis.TitlePositionMode = RadarTitlePositionMode.NearestPoint;
radarChart.Axes.Add(radarAxis);
|
Visual Basic |
Copy Code
|
Dim radarAxis As NRadarAxis = New NRadarAxis()
radarAxis.Title = "Radar Axis" radarAxis.TitlePositionMode = RadarTitlePositionMode.NearestPoint
radarChart.Axes.Add(radarAxis)
|
Title Fit Mode
The TitleFitMode property of the radar axis allows you to specify whether radar labels are wrapped or not. The possible values of this property are:
RadarTitleFitMode |
Description |
None |
Radar axis titles are not fitted and will have their original width. |
Wrap |
Radar axis titles are wrapped so that their width does not exceed the value specified by the TitleMaxWidth property. |
The following code snippet modifies the title fit mode to wrap and specifies that labels should not exceed 50 points in width:
C# |
Copy Code
|
NRadarAxis radarAxis = new NRadarAxis();
radarAxis.Title = "Some Long Radar Axis Title";
radarAxis.TitleFitMode = RadarTitleFitMode.Wrap;
radarAxis.TitleMaxWidth = new NLength(50);
radarChart.Axes.Add(radarAxis);
|
Visual Basic |
Copy Code
|
Dim radarAxis As NRadarAxis = New NRadarAxis()
radarAxis.Title = "Some Long Radar Axis Title" radarAxis.TitleFitMode = RadarTitleFitMode.Wrap
radarAxis.TitleMaxWidth = New NLength(50)
radarChart.Axes.Add(radarAxis)
|
Title Text Alignment
When you have multi line radar axis titles it is sometimes necessary to specify left, right or center alignment depending on the position of the title relative to the radar center. This is achieved by setting the TitleAutomaticAlignment property to true:
C# |
Copy Code
|
radarAxis.TitleAutomaticAlignment = true;
|
Visual Basic |
Copy Code
|
radarAxis.TitleAutomaticAlignment = True
|
The following picture shows the effect of this property:
Windows Forms : Chart Gallery \ Radar \ Multi Measure Radar
Windows Forms : Chart Gallery \ Radar \ Radar Axis Titles
Web Forms : Chart Gallery \ Radar \ Multi Measure Radar
Web Forms : Chart Gallery \ Radar \ Radar Axis Titles