Sorting Data
- 2 minutes to read
You can sort auto-created series by name in ascending or descending order. If you use qualitative series, you can choose whether to sort points by arguments or values.
This topic consists of the following sections:
Sort Series
The Chart Control sorts series by name. The names of automatically generated series are obtained from a data source’s field specified via the ChartControl.SeriesDataMember property.
The ChartControl.SeriesSorting property allows you to toggle between ascending and descending order, and affects the order of series in the chart’s diagram and legend.
The following images illustrate this property:
The property’s value | Resulting image |
---|---|
SeriesSorting = None | |
SeriesSorting = Ascending | |
SeriesSorting = Descending |
The following code sorts series in ascending order:
To sort series you created, change their order in the ChartControl.Series collection.
Sort Series Points
The Chart Control can sort series with qualitative arguments (SeriesBase.ArgumentScaleType is set to Qualitative) only. Use the SeriesBase.SeriesPointsSorting property to specify how to sort series points (ascending, descending, or none). The SeriesBase.SeriesPointsSortingKey property defines whether to sort series points by their arguments or values.
The following images show the modes that are available for the SeriesBase.SeriesPointsSorting property when series points are sorted by values:
Property values | Resulting image |
---|---|
SeriesPointsSorting = None SeriesPointsSortingKey = Value | |
SeriesPointsSorting = Ascending SeriesPointsSortingKey = Value | |
SeriesPointsSorting = Descending SeriesPointsSortingKey = Value |
The following code sorts points by values in ascending order:
SeriesBase seriesTemplate = chartControl1.SeriesTemplate;
seriesTemplate.SeriesPointsSorting = SortingMode.Ascending;
seriesTemplate.SeriesPointsSortingKey = SeriesPointKey.Value_1;
You can enable the SeriesBase.DataSorted property to notify the chart series that its data source is already sorted to prevent the chart’s internal sorting procedures and improve chart performance.
Custom Sorting
You can also implement a comparer that specifies a custom order for qualitative x-axis arguments. Refer to the Reorder Qualitative Axis Values section for more information.