[Expand]General Information
[Collapse]WinForms Controls
  .NET Core Support
 [Expand]What's Installed
 [Expand]Build an Application
 [Collapse]Controls and Libraries
  [Expand]Forms and User Controls
  [Expand]Messages, Notifications, and Dialogs
  [Expand]Editors and Simple Controls
  [Expand]Ribbon, Bars and Menu
  [Expand]Application UI Manager
  [Expand]Docking Library
  [Expand]Data Grid
  [Expand]Vertical Grid
  [Expand]Property Grid
  [Expand]Pivot Grid
  [Expand]Tree List
  [Expand]Gantt Control
  [Collapse]Chart Control
   [Expand]Getting Started
   [Expand]Charting Basics
   [Expand]Series Views
   [Expand]Chart Elements
   [Expand]Providing Data
   [Collapse]Data Representation
     Filter Series Data
     Sorting Data
     Data Aggregation
     Calculating Summaries
    [Expand]Financial Charting
     Using The Top-N Feature
     Work Time and Workday Configuration
     Empty Points
   [Expand]Appearance Customization
   [Expand]End-User Features
   [Expand]Design-Time Features
   [Expand]Visual Elements
   [Expand]Additional Resources
  [Expand]Map Control
  [Expand]Rich Text Editor
  [Expand]Spell Checker
  [Expand]Form Layout Managers
  [Expand]Navigation Controls
  [Expand]PDF Viewer
  [Expand]TreeMap Control
  [Expand]Sunburst Control
 [Expand]Common Features
  Get More Help
 [Expand]API Reference
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Report and Dashboard Server
[Expand]eXpressApp Framework
[Expand]eXpress Persistent Objects
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation
View this topic on docs.devexpress.com (Learn more)

Filter Series Data

This document describes how to filter chart data at the chart control level.


If you use large data sources, we recommend that you filter and sort your data source at the data source level before it is visualized if users should not change filtering and sorting parameters.

The topic contains the following sections:

Expanded Assign a Filter to a Series at Design Time

Bind a series to a data source. See Lesson 3 - Bind Chart Series to Data for more information on how to bind a series to a data source at design time.

Click the series FilterCriteria property's ellipsis button in the Properties window (you can also use the Chart Designer or Series Collection Editor to access a series). In the invoked Filter UI Editor, use the plus button to add a new condition. Then, select the column name and criteria operator, and specify the operand value.

Expanded Filter Series Data at Runtime

Use the FilterString Property

The SeriesBase.FilterString property to define an expression used to filter series data. Use Criteria Language Syntax to create the filter expression.

Use the FilterCriteria Property

You can use the SeriesBase.FilterCriteria property instead of SeriesBase.FilterString to build and pass a filter expression. Use Criteria Operators to construct the filter expression.

To convert a filter string to its CriteriaOperator equivalent, call the CriteriaOperator.Parse method.

Expanded Obtain Filtered Series Points

You can access a collection of points the Chart generates based on the filter expression in the ChartControl.BoundDataChanged event handler:

Expanded Initialize Filtering UI Context at Design Time

For example, a form contains a Chart Control, Accordion Control, and Filtering UI Context. To filter a series generated from a template, click the FilteringUIContext's smart tag and set its Client property to the Chart Control.

Next, call the FilteringUIContext.RetrieveFields() method in the Form.Load event handler to initialize the filters. See the Filtering UI Context: Retrieve Fields and Create the Filter UI section for more information.

Now, the Chart Control uses the Filtering UI to manage series' SeriesBase.FilterCriteria.

Refer to the Filtering Attributes guide for more information on how to customize the Filtering UI.


Run the Data Filtering demo to try out the Filtering UI.


An individual series's data source cannot be used as the Context's Client at design time. See the Initialize Filtering UI Context at Runtime section for more information.

Expanded Initialize Filtering UI Context at Runtime

To filter an individual series's data, initialize the Filtering UI at runtime. The following code demonstrates how to use a custom filter model to filter series data. Note that in this case, you should use the FilteringUIContext.SetFilterCriteriaBinding method instead of the Client property to bind the Context to the SeriesBase.FilterCriteria property.

Expanded See Also

Is this topic helpful?​​​​​​​