Back to Devexpress

SeriesTemplateSummaryAdapter.QualitativeSummaryOptions Property

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

latest11.0 KB
Original Source

SeriesTemplateSummaryAdapter.QualitativeSummaryOptions Property

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

Namespace : DevExpress.XtraCharts

Assembly : DevExpress.XtraCharts.v25.2.dll

NuGet Package : DevExpress.Charts

Declaration

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

Property Value

TypeDescription
QualitativeSummaryOptions

Stores summarization settings for a chart with qualitative arguments.

|

Remarks

The QualitativeSummaryOptions 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 {
        ChartControl chart;

        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 = "Category",
                ScaleType = ScaleType.Qualitative
            });
            // 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 = "Region",
                ScaleType = ScaleType.Qualitative
            });

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

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

        public class DataPoint {
            public string Category { get; set; }
            public string Region { get; set; }
            public double Value { get; set; }
            public static List<DataPoint> GetDataPoints() {
                return new List<DataPoint> {
                    new DataPoint { Category = "Video players", Region = "Asia", Value = 853D},
                    new DataPoint { Category = "Video players", Region = "Europe", Value = 655D},
                    new DataPoint { Category = "Video players", Region = "Europe", Value = 204D},
                    new DataPoint { Category = "Video players", Region = "Europe", Value = 365D},
                    new DataPoint { Category = "Video players", Region = "North America", Value = 1325D},
                    new DataPoint { Category = "Automation", Region = "Asia", Value = 172D},
                    new DataPoint { Category = "Automation", Region = "Asia", Value = 243D},
                    new DataPoint { Category = "Automation", Region = "Asia", Value = 396D},
                    new DataPoint { Category = "Automation", Region = "Europe", Value = 981D},
                    new DataPoint { Category = "Automation", Region = "North America", Value = 963D},
                    new DataPoint { Category = "Monitors", Region = "Asia", Value = 1011D},
                    new DataPoint { Category = "Monitors", Region = "Europe", Value = 721D},
                    new DataPoint { Category = "Monitors", Region = "Europe", Value = 132D},
                    new DataPoint { Category = "Monitors", Region = "North America", Value = 565D},
                    new DataPoint { Category = "Monitors", Region = "North America", Value = 423D}
                };
            }
        }
    }
}
vb
Imports DevExpress.XtraCharts
Imports System
Imports System.Collections.Generic
Imports System.Windows.Forms

Namespace SummaryChart
    Public Partial Class Form1
        Inherits Form

        Private chart As ChartControl

        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 = "Category",
                .ScaleType = ScaleType.Qualitative
            })
            ' 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 = "Region",
                .ScaleType = ScaleType.Qualitative
            })

            ' Specify a summary function.
            dataAdapter.QualitativeSummaryOptions.SummaryFunction = "SUM([Value])"

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

        Public Class DataPoint
            Public Property Category As String
            Public Property Region As String
            Public Property Value As Double

            Public Shared Function GetDataPoints() As List(Of DataPoint)
                Return New List(Of DataPoint) From {
                    New DataPoint With {
                        .Category = "Video players",
                        .Region = "Asia",
                        .Value = 853R
                    },
                    New DataPoint With {
                        .Category = "Video players",
                        .Region = "Europe",
                        .Value = 655R
                    },
                    New DataPoint With {
                        .Category = "Video players",
                        .Region = "Europe",
                        .Value = 204R
                    },
                    New DataPoint With {
                        .Category = "Video players",
                        .Region = "Europe",
                        .Value = 365R
                    },
                    New DataPoint With {
                        .Category = "Video players",
                        .Region = "North America",
                        .Value = 1325R
                    },
                    New DataPoint With {
                        .Category = "Automation",
                        .Region = "Asia",
                        .Value = 172R
                    },
                    New DataPoint With {
                        .Category = "Automation",
                        .Region = "Asia",
                        .Value = 243R
                    },
                    New DataPoint With {
                        .Category = "Automation",
                        .Region = "Asia",
                        .Value = 396R
                    },
                    New DataPoint With {
                        .Category = "Automation",
                        .Region = "Europe",
                        .Value = 981R
                    },
                    New DataPoint With {
                        .Category = "Automation",
                        .Region = "North America",
                        .Value = 963R
                    },
                    New DataPoint With {
                        .Category = "Monitors",
                        .Region = "Asia",
                        .Value = 1011R
                    },
                    New DataPoint With {
                        .Category = "Monitors",
                        .Region = "Europe",
                        .Value = 721R
                    },
                    New DataPoint With {
                        .Category = "Monitors",
                        .Region = "Europe",
                        .Value = 132R
                    },
                    New DataPoint With {
                        .Category = "Monitors",
                        .Region = "North America",
                        .Value = 565R
                    },
                    New DataPoint With {
                        .Category = "Monitors",
                        .Region = "North America",
                        .Value = 423R
                    }
                }
            End Function
        End Class
    End Class
End Namespace

See Also

SeriesTemplateSummaryAdapter Class

SeriesTemplateSummaryAdapter Members

DevExpress.XtraCharts Namespace