Skip to main content
All docs
V25.1
  • SeriesTemplateSummaryAdapter.DateTimeSummaryOptions Property

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

    Namespace: DevExpress.XtraCharts

    Assembly: DevExpress.XtraCharts.v25.1.dll

    NuGet Package: DevExpress.Charts

    #Declaration

    [PersistenceMode(PersistenceMode.InnerProperty)]
    [XtraChartsLocalizableCategory(XtraChartsCategory.Data)]
    public DateTimeSummaryOptions DateTimeSummaryOptions { get; }

    #Property Value

    Type Description
    DateTimeSummaryOptions

    Stores summary settings for a chart with DateTime arguments.

    #Remarks

    The DateTimeSummaryOptions 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:

    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.DateTime
                });
                // 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.DateTimeSummaryOptions.SummaryFunction = "AVERAGE([Value])";
    
                // Assign the data adapter to the chart.
                chart.SeriesTemplate.DataAdapter = dataAdapter;
            }
    
            public class DataPoint {
                public DateTime 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 = new DateTime(2020,1,1), Value = 853D, Name = "Series 2"},
                        new DataPoint { Argument = new DateTime(2020,1,1), Value = 321D, Name = "Series 2"},
                        new DataPoint { Argument = new DateTime(2020,1,1), Value = 655D, Name = "Series 1"},
                        new DataPoint { Argument = new DateTime(2020,2,1), Value = 1325D, Name = "Series 1"},
                        new DataPoint { Argument = new DateTime(2020,2,1), Value = 653D, Name = "Series 2"},
                        new DataPoint { Argument = new DateTime(2020,2,1), Value = 172D, Name = "Series 2"},
                        new DataPoint { Argument = new DateTime(2020,2,1), Value = 255D, Name = "Series 1"},
                        new DataPoint { Argument = new DateTime(2020,3,1), Value = 981D, Name = "Series 1"},
                        new DataPoint { Argument = new DateTime(2020,3,1), Value = 913D, Name = "Series 2"},
                        new DataPoint { Argument = new DateTime(2020,3,1), Value = 123D, Name = "Series 1"},
                        new DataPoint { Argument = new DateTime(2020,4,1), Value = 1011D, Name = "Series 1"},
                        new DataPoint { Argument = new DateTime(2020,4,1), Value = 359D, Name = "Series 2"},
                        new DataPoint { Argument = new DateTime(2020,4,1), Value = 721D, Name = "Series 2"},
                        new DataPoint { Argument = new DateTime(2020,4,1), Value = 565D, Name = "Series 1"}
                    };
                }
            }
        }
    }
    
    See Also