Spline Area Series
Send Feedback

Glossary Item Box

Topic Overview

Purpose

This topic provides a conceptual overview of the Spline Area series in the IGChartView™ control and uses a code example to demonstrate how to add it to the chart view.

In this topic


Introduction

Spline Area series summary

Spline area series belongs to a group of category series that uses a collection of points connected by smooth curves of spline with the area below the spline filled in when rendered. Values are represented on the y-axis (IGNumericYAxis) and categories are displayed on the x-axis (IGCategoryXAxis or IGCategoryDateTimeXAxis). Spline area series emphasizes the amount of change over time or compares multiple items as well as the relationship of parts to a whole by displaying the total of the plotted values.

The spline area series is identical to the area series in all aspects except that line connecting data points has spline interpolation and smoothing for improved presentation of data.

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. If the data does not meet the minimum requirements, based on the type of series that you are using, the IGChartView will appear blank.

The following is a list of data requirements for the area series type:

  • Required – the data model must contain at least one numeric field for rendering the data. The data model should contain two or more data items so that a spline can have two or more points.
  • Optional – the data model may contain an optional string or NSDate field for labels.

Adding a Spline Area Series to the IGChartView – Code Example

Description

The code below uses the IGCategorySeriesDataSourceHelper to supply randomly generated data to a spline area series that first gets added to the IGChartView instance, and then the IGChartView is added as a subview of the current UIView.

Prerequisites

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

Code

In Objective-C:

    NSMutableArray data = [[NSMutableArray alloc] init];
    for (int i = 0; i < 25; i++)
    {
        double value = arc4random() % 100;
        [data addObject:[[NSNumber alloc] initWithDouble:value]];
    }
    
    IGCategorySeriesDataSourceHelper *source = [[IGCategorySeriesDataSourceHelper alloc] init];
    source.values = data;
    
    IGChartView *infraChart = [[IGChartView alloc] initWithFrame:self.view.frame];
    [infraChart setAutoresizingMask:UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleHeight];
    
    IGCategoryXAxis *xAxis = [[IGCategoryXAxis alloc] initWithKey:@"xAxis"];
    IGNumericYAxis *yAxis = [[IGNumericYAxis alloc] initWithKey:@"yAxis"];
    [infraChart addAxis:xAxis];
    [infraChart addAxis:yAxis];
    
    IGSplineAreaSeries *splineAreaSeries = [[IGSplineAreaSeries alloc] initWithKey:@"splineAreaSeries"];
    splineAreaSeries.xAxis = xAxis;
    splineAreaSeries.yAxis = yAxis;
    splineAreaSeries.dataSource = source;
    
    [infraChart addSeries:splineAreaSeries];
    [self.view addSubview:infraChart];

In C#:


List<NSObject> data = new List<NSObject>();
Random r = new Random();
for(int i = 0;i <25; i++)
{
double val = r.Next() % 100;
data.Add(new NSNumber(val));
}

IGCategoryDateSeriesDataSourceHelper source = new IGCategoryDateSeriesDataSourceHelper();
source.Values = data.ToArray();



IGChartView chart = new IGChartView(this.View.Frame);
chart.AutoresizingMask = UIViewAutoresizing.FlexibleHeight | UIViewAutoresizing.FlexibleWidth;

this.View.AddSubview(chart);


IGCategoryXAxis xAxis = new IGCategoryXAxis("xAxis");
IGNumericYAxis yAxis = new IGNumericYAxis("yAxis");
chart.AddAxis(xAxis);
chart.AddAxis(yAxis);


IGSplineAreaSeries series= new IGSplineAreaSeries ("series");
series.XAxis = xAxis;
series.YAxis = yAxis;
series.DataSource = source;

chart.AddSeries(columnSeries);


Related Content

Topics

The following topics provide additional information related to this topic.

Topic

Purpose

This is a group of topics explaining the various types of Category series supported by the IGChartView control.