Back to Devexpress

Side-by-Side Bar Chart

windowsforms-3421-controls-and-libraries-chart-control-series-views-3d-series-views-bar-series-views-side-by-side-bar-chart.md

latest6.2 KB
Original Source

Side-by-Side Bar Chart

  • Jan 15, 2024
  • 3 minutes to read

Short Description

The Side-by-Side Bar Chart is represented by the SideBySideBar3DSeriesView object, which belongs to Bar Series Views. This view displays series as individual bars, grouped by category, and the height of each bar is determined by the series value.

A Side-by-Side Bar chart is shown in the image below.

Chart Type Characteristics

The table below lists the main characteristics of this chart type.

FeatureValue
Series View typeSideBySideBar3DSeriesView
Diagram typeXYDiagram3D
Number of arguments per series point1
Number of values per series point1

Note

For information on which chart types can be combined with the Side-by-Side Bar Chart , refer to the Series Views Compatibility document.

Example

This example demonstrates how to create a ChartControl with two series of the Bar3DSeriesView type, set its general properties, and add this chart to a form at runtime.

To implement a 3D Side-by-Side Bar chart in your application, create a Windows Forms Application in Visual Studio, and include all necessary assemblies to the References list of your project.

Then, add the following code to the Form.Load event handler:

cs
using System;
using System.Windows.Forms;
using DevExpress.XtraCharts;
// ...
        private void Form1_Load(object sender, EventArgs e) {
            // Create a new chart.
            ChartControl BarChart3D = new ChartControl();

            // Add a bar series to it.
            Series series1 = new Series("Series 1", ViewType.Bar3D);
            Series series2 = new Series("Series 2", ViewType.Bar3D);

            // Add points to the series.
            series1.Points.Add(new SeriesPoint("A", 4));
            series1.Points.Add(new SeriesPoint("B", 7));
            series1.Points.Add(new SeriesPoint("C", 12));
            series1.Points.Add(new SeriesPoint("D", 17));
            series2.Points.Add(new SeriesPoint("A", 9));
            series2.Points.Add(new SeriesPoint("B", 11));
            series2.Points.Add(new SeriesPoint("C", 15));
            series2.Points.Add(new SeriesPoint("D", 23));

            // Add both series to the chart.
            BarChart3D.Series.AddRange(new Series[] { series1, series2 });

            // Access the series options.
            series1.Label.TextPattern = "{A}: {V}";
            series1.LabelsVisibility = DevExpress.Utils.DefaultBoolean.True;

            // Customize the view-type-specific properties of the series.
            Bar3DSeriesView myView = (Bar3DSeriesView)series1.View;
            myView.BarDepthAuto = false;
            myView.BarDepth = 1;
            myView.BarWidth = 1;
            myView.Transparency = 80;

            // Access the diagram's options.
            ((XYDiagram3D)BarChart3D.Diagram).ZoomPercent = 110;

            // Add a title to the chart and hide the legend.
            ChartTitle chartTitle1 = new ChartTitle();
            chartTitle1.Text = "3D Side-by-Side Bar Chart";
            BarChart3D.Titles.Add(chartTitle1);
            BarChart3D.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False;

            // Add the chart to the form.
            BarChart3D.Dock = DockStyle.Fill;
            this.Controls.Add(BarChart3D);
        }
    }
}
vb
Imports System
Imports System.Windows.Forms
Imports DevExpress.XtraCharts
' ...
        Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)
            ' Create a new chart.
            Dim BarChart3D As ChartControl = New ChartControl()
            ' Add a bar series to it.
            Dim series1 As Series = New Series("Series 1", ViewType.Bar3D)
            Dim series2 As Series = New Series("Series 2", ViewType.Bar3D)
            ' Add points to the series.
            series1.Points.Add(New SeriesPoint("A", 4))
            series1.Points.Add(New SeriesPoint("B", 7))
            series1.Points.Add(New SeriesPoint("C", 12))
            series1.Points.Add(New SeriesPoint("D", 17))
            series2.Points.Add(New SeriesPoint("A", 9))
            series2.Points.Add(New SeriesPoint("B", 11))
            series2.Points.Add(New SeriesPoint("C", 15))
            series2.Points.Add(New SeriesPoint("D", 23))
            ' Add both series to the chart.
            BarChart3D.Series.AddRange(New Series() {series1, series2})
            ' Access the series options.
            series1.Label.TextPattern = "{A}: {V}"
            series1.LabelsVisibility = DevExpress.Utils.DefaultBoolean.True
            ' Customize the view-type-specific properties of the series.
            Dim myView As Bar3DSeriesView = CType(series1.View, Bar3DSeriesView)
            myView.BarDepthAuto = False
            myView.BarDepth = 1
            myView.BarWidth = 1
            myView.Transparency = 80
            ' Access the diagram's options.
            CType(BarChart3D.Diagram, XYDiagram3D).ZoomPercent = 110
            ' Add a title to the chart and hide the legend.
            Dim chartTitle1 As ChartTitle = New ChartTitle()
            chartTitle1.Text = "3D Side-by-Side Bar Chart"
            BarChart3D.Titles.Add(chartTitle1)
            BarChart3D.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False
            ' Add the chart to the form.
            BarChart3D.Dock = DockStyle.Fill
            Me.Controls.Add(BarChart3D)
        End Sub
    End Class
End Namespace

See Also

XY-Diagram 3D