Polar Spline Area Series
Send Feedback

Glossary Item Box

Topic Overview


This topic is a conceptual overview of the IGChartView™ control’s Polar Spline Area Series and provides a code example demonstrating how to add it to the chart views.

In this topic


Polar Spline Area series summary

Polar Spline Area series has a shape of a filled region enclosed by a collection of spline lines connecting data points plotted as polar (angle/radius) coordinates. The Polar Spline Area series uses the same concepts of data plotting as the Scatter Spline Series but wraps data points around a circle rather than stretching them along a horizontal line. Like with other series types, you can plot multiple Polar Area series in the same data chart and they can be overlaid on each other to show the differences and similarities between data sets.

Data requirements

While the IGChartView control allows easy binding to your own data model, make sure to supply the appropriate amounts and types of data required by the series. Failing to do so causes the IGChartView to appear blank.

Required – the bound data model must contain two numeric field, for each of the two polar coordinates (angle and radius), for rendering polar spline data.

Adding a Polar Spline Area Series to the IGChartView – Code Example


The code below uses the IGPolarSeriesDataSourceHelper to supply randomly generated data to a Polar Spline Area Series by first adding to the IGChartView instance, and then adding the IGChartView as a subview of the current UIView.


This code example requires the inclusion of the IGChartView framework, detail about how to add this framework is available in the Adding the Chart Framework File topic.


In C#:

NSMutableArray angle = new NSMutableArray();
for (int i = 0; i < 25; i++) {
      angle.Add(new NSNumber((i * 14)));
NSMutableArray radius = new NSMutableArray();
for (int i = 0; i < 25; i++) {
      radius.Add(new NSNumber(new Random(i).Next () % 100));
IGPolarSeriesDataSourceHelper source = new IGPolarSeriesDataSourceHelper();
source.AngleValues = angle;
source.RadiusValues = radius;
IGChartView infraChart = new IGChartView(this.View.Frame);
IGNumericAngleAxis angleAxis = new IGNumericAngleAxis("angleAxis");
IGNumericRadiusAxis radiusAxis = new IGNumericRadiusAxis("radiusAxis");
angleAxis.Minimum = 0;
angleAxis.Maximum = 360;
angleAxis.Interval = 30;
IGPolarSplineAreaSeries polarSplineAreaSeries = new IGPolarSplineAreaSeries("polarSplineAreaSeries");
polarSplineAreaSeries.AngleAxis = angleAxis;
polarSplineAreaSeries.RadiusAxis = radiusAxis;
polarSplineAreaSeries.DataSource = source;
polarSplineAreaSeries.MarkerType = IGMarkerType.IGMarkerTypeNone;

In Objective-C:

    NSMutableArray *angle = [[NSMutableArray alloc] init];
    for (int i = 0; i < 25; i++) {
        [angle addObject:[[NSNumber alloc] initWithDouble:(i * 14)]];
    NSMutableArray *radius = [[NSMutableArray alloc] init];
    for (int i = 0; i < 25; i++) {
        [radius addObject:[[NSNumber alloc] initWithDouble:(arc4random() % 100)]];
    IGPolarSeriesDataSourceHelper *source = [[IGPolarSeriesDataSourceHelper alloc] init];
    source.angleValues = angle;
    source.radiusValues = radius;
    IGChartView *infraChart = [[IGChartView alloc] initWithFrame:self.view.frame];
    IGNumericAngleAxis *angleAxis = [[IGNumericAngleAxis alloc] initWithKey:@"angleAxis"];
    IGNumericRadiusAxis *radiusAxis = [[IGNumericRadiusAxis alloc] initWithKey:@"radiusAxis"];
    angleAxis.minimum = 0;
    angleAxis.maximum = 360;
    angleAxis.interval = 30;
    [infraChart addAxis:angleAxis];
    [infraChart addAxis:radiusAxis];
    IGPolarSplineAreaSeries *polarSplineAreaSeries = [[IGPolarSplineAreaSeries alloc] initWithKey:@"polarSplineAreaSeries"];
    polarSplineAreaSeries.angleAxis = angleAxis;
    polarSplineAreaSeries.radiusAxis = radiusAxis;
    polarSplineAreaSeries.dataSource = source;
    polarSplineAreaSeries.markerType = IGMarkerTypeNone;
    [infraChart addSeries:polarSplineAreaSeries];
    [self.view addSubview:infraChart];

Related Content


The following topics provide additional information related to this topic.



This collection of topics explains each of the individual charts supported by the IGChartView control.