Back to Devexpress

SeriesTemplateSummaryAdapter.NumericSummaryOptions Property

corelibraries-devexpress-dot-xtracharts-dot-seriestemplatesummaryadapter.md

latest10.2 KB
Original Source

SeriesTemplateSummaryAdapter.NumericSummaryOptions Property

Returns options that configure how the series calculates summary values of a data source with numeric arguments.

Namespace : DevExpress.XtraCharts

Assembly : DevExpress.XtraCharts.v25.2.dll

NuGet Package : DevExpress.Charts

Declaration

csharp
[PersistenceMode(PersistenceMode.InnerProperty)]
[XtraChartsLocalizableCategory(XtraChartsCategory.Data)]
public NumericSummaryOptions NumericSummaryOptions { get; }
vb
<XtraChartsLocalizableCategory(XtraChartsCategory.Data)>
<PersistenceMode(PersistenceMode.InnerProperty)>
Public ReadOnly Property NumericSummaryOptions As NumericSummaryOptions

Property Value

TypeDescription
NumericSummaryOptions

Stores summarization settings for a chart with numeric arguments.

|

Remarks

The NumericSummaryOptions include the SummaryFunction property. This property defines a function used to summarize series values.

Example

The following example shows how to create multiple series based on a template and aggregate their points with equal arguments:

csharp
using DevExpress.XtraCharts;
using System;
using System.Collections.Generic;
using System.Windows.Forms;

namespace SummaryChart {
    public partial class Form1 : Form {
        private void OnLoad(object sender, EventArgs e) {

            // Specify the chart data source.
            chart.DataSource = DataPoint.GetDataPoints();

            //Create a summary data adapter.
            SeriesTemplateSummaryAdapter dataAdapter = new SeriesTemplateSummaryAdapter();

            // Create a data member that defines arguments.
            dataAdapter.DataMembers.Add(new DataMember {
                DataMemberType = ChartDataMemberType.Argument,
                ColumnName = "Argument",
                ScaleType = ScaleType.Numerical
            });
            // Create a data member that defines values.
            dataAdapter.DataMembers.Add(new DataMember {
                DataMemberType = ChartDataMemberType.Value,
                ColumnName = "Value",
                ScaleType = ScaleType.Numerical
            });
            // Create a data member that identifies data series.
            dataAdapter.DataMembers.Add(new DataMember {
                DataMemberType = ChartDataMemberType.Series,
                ColumnName = "Name",
                ScaleType = ScaleType.Qualitative
            });

            // Specify a summary function.
            dataAdapter.NumericSummaryOptions.SummaryFunction = "AVERAGE([Value])";

            // Assign the data adapter to the chart.
            chart.SeriesTemplate.DataAdapter = dataAdapter;
        }

        public class DataPoint {
            public double Argument { get; set; }
            public double Value { get; set; }
            public string Name { get; set; }
            public static List<DataPoint> GetDataPoints() {
                return new List<DataPoint> {
                    new DataPoint { Argument= 1, Value = 853D, Name = "Series 2"},
                    new DataPoint { Argument= 1, Value = 321D, Name = "Series 2"},
                    new DataPoint { Argument= 1, Value = 655D, Name = "Series 1"},
                    new DataPoint { Argument= 1, Value = 1325D, Name = "Series 1"},
                    new DataPoint { Argument= 2, Value = 653D, Name = "Series 2"},
                    new DataPoint { Argument= 2, Value = 172D, Name = "Series 2"},
                    new DataPoint { Argument= 2, Value = 255D, Name = "Series 1"},
                    new DataPoint { Argument= 3, Value = 981D, Name = "Series 1"},
                    new DataPoint { Argument= 3, Value = 913D, Name = "Series 2"},
                    new DataPoint { Argument= 4, Value = 123D, Name = "Series 1"},
                    new DataPoint { Argument= 4, Value = 1011D, Name = "Series 1"},
                    new DataPoint { Argument= 4, Value = 359D, Name = "Series 2"},
                    new DataPoint { Argument= 4, Value = 721D, Name = "Series 2"},
                    new DataPoint { Argument= 4, Value = 565D, Name = "Series 1"}
                };
            }
        }
    }
}
vb
Imports DevExpress.XtraCharts
Imports System
Imports System.Collections.Generic
Imports System.Windows.Forms

Namespace SummaryChart
    Public Partial Class Form1
        Inherits Form

        Private Sub OnLoad(ByVal sender As Object, ByVal e As EventArgs)

            ' Specify the chart data source.
            chart.DataSource = DataPoint.GetDataPoints()

            'Create a summary data adapter.
            Dim dataAdapter As SeriesTemplateSummaryAdapter = New SeriesTemplateSummaryAdapter()

            ' Create a data member that defines arguments.
            dataAdapter.DataMembers.Add(New DataMember With {
                .DataMemberType = ChartDataMemberType.Argument,
                .ColumnName = "Argument",
                .ScaleType = ScaleType.Numerical
            })
            ' Create a data member that defines values.
            dataAdapter.DataMembers.Add(New DataMember With {
                .DataMemberType = ChartDataMemberType.Value,
                .ColumnName = "Value",
                .ScaleType = ScaleType.Numerical
            })
            ' Create a data member that identifies data series.
            dataAdapter.DataMembers.Add(New DataMember With {
                .DataMemberType = ChartDataMemberType.Series,
                .ColumnName = "Name",
                .ScaleType = ScaleType.Qualitative
            })

            ' Specify a summary function.
            dataAdapter.NumericSummaryOptions.SummaryFunction = "AVERAGE([Value])"

            ' Assign the data adapter to the chart.
            chart.SeriesTemplate.DataAdapter = dataAdapter
        End Sub

        Public Class DataPoint
            Public Property Argument As Double
            Public Property Value As Double
            Public Property Name As String

            Public Shared Function GetDataPoints() As List(Of DataPoint)
                Return New List(Of DataPoint) From {
                    New DataPoint With {
                        .Argument = 1,
                        .Value = 853R,
                        .Name = "Series 2"
                    },
                    New DataPoint With {
                        .Argument = 1,
                        .Value = 321R,
                        .Name = "Series 2"
                    },
                    New DataPoint With {
                        .Argument = 1,
                        .Value = 655R,
                        .Name = "Series 1"
                    },
                    New DataPoint With {
                        .Argument = 1,
                        .Value = 1325R,
                        .Name = "Series 1"
                    },
                    New DataPoint With {
                        .Argument = 2,
                        .Value = 653R,
                        .Name = "Series 2"
                    },
                    New DataPoint With {
                        .Argument = 2,
                        .Value = 172R,
                        .Name = "Series 2"
                    },
                    New DataPoint With {
                        .Argument = 2,
                        .Value = 255R,
                        .Name = "Series 1"
                    },
                    New DataPoint With {
                        .Argument = 3,
                        .Value = 981R,
                        .Name = "Series 1"
                    },
                    New DataPoint With {
                        .Argument = 3,
                        .Value = 913R,
                        .Name = "Series 2"
                    },
                    New DataPoint With {
                        .Argument = 4,
                        .Value = 123R,
                        .Name = "Series 1"
                    },
                    New DataPoint With {
                        .Argument = 4,
                        .Value = 1011R,
                        .Name = "Series 1"
                    },
                    New DataPoint With {
                        .Argument = 4,
                        .Value = 359R,
                        .Name = "Series 2"
                    },
                    New DataPoint With {
                        .Argument = 4,
                        .Value = 721R,
                        .Name = "Series 2"
                    },
                    New DataPoint With {
                        .Argument = 4,
                        .Value = 565R,
                        .Name = "Series 1"
                    }
                }
            End Function
        End Class
    End Class
End Namespace

See Also

SeriesTemplateSummaryAdapter Class

SeriesTemplateSummaryAdapter Members

DevExpress.XtraCharts Namespace