简要说明
堆积条形图 是由 StackedBarSeriesView 对象来表示的,此对象属于 条形和柱状系列视图。 这种视图把不同系列中有相同参数的所有点显示为一个堆积条形 (例如,用于展示每个条形表示一个特定的类别)。 因此,每个条形的高度取决于该类别的所有系列值的总计。
在下面的插图中显示了一个堆积条形图。 注意,这种图表类型基于 XYDiagram,因此可以被旋转,从而垂直地或水平地显示图表。
注意 |
---|
堆积条形图可以显示包含正值或负值数据点的系列。 但是,有正值的系列只能与其他包含正值的系列相堆积; 有负值的系列与其他包含负值的系列相堆积。 注意,如果系列同时包含正值和负值数据点,那么它被作为有正值的系列进行处理,而它的所有负值都被视为零。 |
图表类型特征
下表列出了这种图表类型的主要特征。
特征 |
取值 |
---|---|
系列视图类型 | StackedBarSeriesView |
图象类型 | 2D- XYDiagram |
每个数据点的参数个数 | 1 |
每个数据点的取值个数 | 1 |
注意 |
---|
要获得关于哪些图表类型可以与 堆积条形图 组合使用的信息,请参阅 组合使用不同的系列视图 文档。 |
示例
下面的示例演示了在运行时刻如何创建 ChartControl (拥有两个 StackedBarSeriesView 类型的系列),并把图表添加到窗体中。 在继续本示例之前,首先要在 Visual Studio 中创建一个 Windows 窗体应用程序,并把所有 必需的程序集 包含到项目的“引用”列表中。
然后,把下列代码添加到 Form.Load 事件处理程序。
C# | 复制代码 |
---|---|
using System; using System.Windows.Forms; using DevExpress.XtraCharts; // ... private void Form1_Load(object sender, EventArgs e) { // Create a new chart. ChartControl stackedBarChart = new ChartControl(); // Create two stacked bar series. Series series1 = new Series("Series 1", ViewType.StackedBar); Series series2 = new Series("Series 2", ViewType.StackedBar); // Add points to them series1.Points.Add(new SeriesPoint("A", 10)); series1.Points.Add(new SeriesPoint("B", 12)); series1.Points.Add(new SeriesPoint("C", 14)); series1.Points.Add(new SeriesPoint("D", 17)); series2.Points.Add(new SeriesPoint("A", 15)); series2.Points.Add(new SeriesPoint("B", 18)); series2.Points.Add(new SeriesPoint("C", 25)); series2.Points.Add(new SeriesPoint("D", 33)); // Add both series to the chart. stackedBarChart.Series.AddRange(new Series[] { series1, series2 }); // Access the view-type-specific options of the series. ((StackedBarSeriesView)series1.View).BarWidth = 0.8; // Access the type-specific options of the diagram. ((XYDiagram)stackedBarChart.Diagram).EnableAxisXZooming = true; // Hide the legend (if necessary). stackedBarChart.Legend.Visible = false; // Add a title to the chart (if necessary). stackedBarChart.Titles.Add(new ChartTitle()); stackedBarChart.Titles[0].Text = "A Stacked Bar Chart"; // Add the chart to the form. stackedBarChart.Dock = DockStyle.Fill; this.Controls.Add(stackedBarChart); } |
Visual Basic | 复制代码 |
---|---|
Imports System Imports System.Windows.Forms Imports DevExpress.XtraCharts ' ... Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) _ Handles MyBase.Load ' Create a new chart. Dim stackedBarChart As New ChartControl() ' Create two stacked bar series. Dim series1 As New Series("Series 1", ViewType.StackedBar) Dim series2 As New Series("Series 2", ViewType.StackedBar) ' Add points to them series1.Points.Add(New SeriesPoint("A", 10)) series1.Points.Add(New SeriesPoint("B", 12)) series1.Points.Add(New SeriesPoint("C", 14)) series1.Points.Add(New SeriesPoint("D", 17)) series2.Points.Add(New SeriesPoint("A", 15)) series2.Points.Add(New SeriesPoint("B", 18)) series2.Points.Add(New SeriesPoint("C", 25)) series2.Points.Add(New SeriesPoint("D", 33)) ' Add both series to the chart. stackedBarChart.Series.AddRange(New Series() { series1, series2 }) ' Access the view-type-specific options of the series. CType(series1.View, StackedBarSeriesView).BarWidth = 0.8 ' Access the type-specific options of the diagram. CType(stackedBarChart.Diagram, XYDiagram).EnableAxisXZooming = True ' Hide the legend (if necessary). stackedBarChart.Legend.Visible = False ' Add a title to the chart (if necessary). stackedBarChart.Titles.Add(New ChartTitle()) stackedBarChart.Titles(0).Text = "A Stacked Bar Chart" ' Add the chart to the form. stackedBarChart.Dock = DockStyle.Fill Me.Controls.Add(stackedBarChart) End Sub |
Show Me |
---|
在 DevExpress Code Central 数据库中可以找到完整的示例项目,网址是 http://www.devexpress.com/example=E1211。 取决于目标平台类型 (ASP.NET、WinForms 等),可以在线运行本示例,或者下载自动可执行的示例。 |