[Expand]General Information
[Expand]WinForms Controls
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Collapse]WPF Controls
 [Expand]What's Installed
 [Expand].NET Core 3 Support
 [Expand]Common Concepts
 [Expand]MVVM Framework
 [Collapse]Controls and Libraries
  [Expand]Data Grid
  [Expand]Ribbon, Bars and Menu
  [Collapse]Charts Suite
   [Collapse]Chart Control
    [Expand]Getting Started
     [Expand]Diagram Fundamentals
     [Collapse]Series Fundamentals
       Series Types Compatibility
      [Collapse]2D Series Types
       [Expand]Area Series
       [Collapse]Bar Series
         Side-by-Side Bar
         Side-by-Side Stacked Bar
         Side-by-Side Full-Stacked Bar
         Stacked Bar
         Full-Stacked Bar
         Side-by-Side Range Bar
         Overlapped Range Bar
       [Expand]Financial Series
       [Expand]Pie and Donut Series
       [Expand]Point, Line, and Bubble Series
       [Expand]Polar Series
       [Expand]Radar Series
        Funnel Series
        Box Plot Series
      [Expand]3D Series Types
    [Expand]Providing Data
    [Expand]Chart Elements
    [Expand]Appearance Customization
    [Expand]End-User Features
    [Expand]Design-Time Features
    [Expand]Additional Resources
   [Expand]Chart3D Control
  [Expand]Pivot Grid
  [Expand]Rich Text Editor
  [Expand]Tree List
  [Expand]Gauge Controls
  [Expand]Map Control
  [Expand]Layout Management
  [Expand]Windows Modern UI
  [Expand]Data Editors
  [Expand]Navigation Controls
  [Expand]Spell Checker
  [Expand]Property Grid
  [Expand]PDF Viewer
  [Expand]TreeMap Control
  [Expand]Gantt Control
  [Expand]Diagram Control
  [Expand]Windows and Utility Controls
   Dialogs, Notifications and Panels
  [Expand]Scheduler (legacy)
 [Expand]Scaffolding Wizard
  Redistribution and Deployment
  Get More Help
 [Expand]API Reference
[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)


A Waterfall chart (also called Bridge Chart, Cascade Chart or Flying Bricks Chart) displays a sequence of bars that indicate positive or negative changes. You can plot Waterfall charts based on relative or absolute data values, and add two types of summary bars: the Total bar next to series points summarizes all values, and the Subtotals bar between two adjacent points (bars) that displays intermediate values.

Demo: Waterfall

Expanded Chart Type Characteristics

The table below lists the main waterfall chart characteristics:

Feature Value
Series view type WaterfallSeries2D
Diagram type XYDiagram2D
Number of arguments per series point 1
Number of values per series point 1

The following image shows the waterfall chart elements:

Expanded Create a Waterfall Chart

The following example demonstrates how to create a chart (see ChartControl) with a Waterfall series (see WaterfallSeries2D):



Refer to Providing Data for more information about how to populate a chart with data.

Expanded Process Relative and Absolute Data Values

If the WaterfallSeries2D.ValueOptions property is set to a WaterfallRelativeValueOptions (see WaterfallRelativeValueOptions) object, the control processes data source values as increments/decrements. You can create and assign a WaterfallAbsoluteValueOptions (see WaterfallAbsoluteValueOptions) object to handle data as absolute values.

The following charts visualize the same data with different value options:

Relative Value Options (default) Absolute Value Options

The following table demonstrates data source values:

Argument Value
November 20
December 10
January -15
February 10
March -10

Plot a Waterfall Based on Relative Values

Set the WaterfallSeries2D.ValueOptions property to a WaterfallRelativeValueOptions (see WaterfallRelativeValueOptions) object if the chart's data source stores increments/decrements. You can also display a start bar with the initial value. The chart plots a start bar at zero if the start bar value is not specified.

Related API members

Plot a Waterfall Based on Absolute Values

Set the WaterfallSeries2D.ValueOptions property to a WaterfallAbsoluteValueOptions (see WaterfallAbsoluteValueOptions) object if the chart's data source stores a set of absolute values. In this case, the chart automatically calculates differences and plot them as waterfall bars.

Related API members

Expanded Add Total and Subtotals

The Waterfall Chart can display a total bar and multiple subtotals.


You can only show the total bar and add subtotals to a series with qualitative arguments.

Related API Members:

Expanded Customize Waterfall Appearance

You can change the color of rising bars, falling bars, the total, subtotals, connectors, and the start bar. The Chart Control also allows you to customize the line style of connectors.

Related API Members:

Expanded Format the Crosshair Label and Series Labels

You can format the crosshair label's and series labels' text. To do this, use the XYSeries2D.CrosshairLabelPattern and SeriesLabel.TextPattern properties. The Chart Control provides a {VABS} placeholder that displays an absolute point value. The {V} placeholder shows value changes for rising and falling bars, and the absolute value for the Total bar.

Expanded Create a Chart with Multiple Waterfall Series

You can create a waterfall chart with multiple series. In this case, the chart displays points of different series as stacked bars:

To create such a chart, use a series template to generate series or add multiple series.




Values of the following attached properties are synchronized in all waterfall series in the Chart Control. If you change these properties' values for any waterfall series, the Chart Control applies the same value to all other waterfall series.

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