Skip to main content
All docs
V25.1
  • Subtotal Class

    A waterfall subtotal.

    Namespace: DevExpress.XtraCharts

    Assembly: DevExpress.XtraCharts.v25.1.dll

    NuGet Package: DevExpress.Charts

    #Declaration

    public class Subtotal :
        ChartElement,
        ISubtotal,
        INotifyPropertyChanged

    The following members return Subtotal objects:

    #Remarks

    To add a subtotal to a waterfall chart, add a Subtotal object to the WaterfallValueOptionsBase.Subtotals collection. Specify the PointIndex to set the subtotal position. To change the subtotal’s axis label and crosshair text, define the Label property.

    #Example

    This example shows how to create a chart with a data series of the waterfall view.

    • Add a series to a chart.
    • Specify the series data members.
    • Use the WaterfallSeriesView object to configure the series view options.
    • Specify value options. If data source stores value differences, use the WaterfallRelativeValueOptions. Use the WaterfallAbsoluteValueOptions class if the data source stores absolute data values.

      private void Form1_Load(object sender, EventArgs e) {
          chartControl1.DataSource = LoadDataTableFromXml("../../Data/carbon.xml", "CarbonContribution");
          Series series = new Series("Carbon Balance", ViewType.Waterfall);
          series.SetDataMembers("Year", "Contribution");
          series.ArgumentScaleType = ScaleType.Qualitative;
          chartControl1.Series.Add(series);
          ((WaterfallSeriesLabel)series.Label).Position = WaterfallSeriesLabelPosition.OutsideEnd;
          series.LabelsVisibility = DevExpress.Utils.DefaultBoolean.True;
          WaterfallSeriesView view = series.View as WaterfallSeriesView;
          if (view != null) {
              view.RisingBarColor = Color.FromArgb(218, 88, 89);
              view.FallingBarColor = Color.FromArgb(146, 206, 181);
              view.SubtotalBarColor = Color.Gray;
              view.TotalBarColor = Color.DarkGray;
              view.StartBarColor = Color.LightGray;
              view.ConnectorColor = Color.Black;
              view.ConnectorStyle.Thickness = 1;
              WaterfallRelativeValueOptions valueOptions = view.ValueOptions as WaterfallRelativeValueOptions;
              if (valueOptions != null) {
                  valueOptions.StartBarLabel = "1989";
                  valueOptions.StartBarValue = 2766D;
                  valueOptions.ShowTotal = true;
                  valueOptions.TotalLabel = "2018";
                  valueOptions.Subtotals.Add(new Subtotal { PointIndex = 16, Label= "February 16, 2005" });
              }
          }  
      }
      

    #Inheritance

    See Also