电子表格文档 API 允许您创建图表。使用图表分析大量数据并显示不同数据集之间的关系。
电子表格文档 API 支持以下图表类型:
柱形图 折线图 饼图 甜甜圈图 条形图 面积图 散点图 气泡图 股票图表 雷达图 Excel
2016 图表
图表类型
图表子类型
说明
2-D Column Charts:
二维柱形图:
Clustered Column
簇状列
Stacked Column
堆积柱
100% Stacked Column
100%
堆积柱
3-D Column Charts:
二维柱形图:
3-D Clustered Column
三维簇状柱
3-D Stacked Column
3-D
堆积柱
3-D 100% Stacked Column
3-D 100%
堆积柱
3-D Column
3-D
色谱柱
Cylinder Charts:
圆柱图:
Clustered Cylinder
簇状圆柱体
Stacked Cylinder
堆叠气缸
100% Stacked Cylinder
100%堆叠气缸
3-D Cylinder
3-D圆柱体
Cone Charts:
圆锥图:
Clustered Cone
簇状圆锥体
Stacked Cone
堆叠锥体
100% Stacked Cone
100%
堆叠锥体
3-D Cone
3-D锥体
Pyramid Charts:
金字塔图:
Clustered Pyramid
簇状金字塔
Stacked Pyramid
堆叠金字塔
100% Stacked Pyramid
100% 堆叠金字塔
3-D Pyramid
3-D 金字塔
2-D
Line Charts:
二维折线图:
Line
线
Stacked Line
堆叠线
100% Stacked Line
100% 堆叠线
Line with Markers
带标记的线条
Stacked Line with Markers
带标记的堆叠线
100% Stacked Line with
Markers
100% 带标记的堆叠线
3-D Line Charts:
二维折线图:
3-D Line
3-D线
2-D
Pie Charts:
二维饼图:
Pie
馅饼
Exploded Pie
爆炸馅饼
3-D Pie Charts:
二维饼图:
3-D Pie
3-D饼图
3-D Exploded Pie
3-D 爆炸饼
Doughnut
油炸圈饼
Exploded Doughnut
爆炸甜甜圈
2-D
Bar Charts:
二维条形图:
Clustered Bar
簇状条形图
Stacked Bar
堆叠酒吧
100% Stacked Bar
100% 堆叠棒
3-D Bar Charts:
二维条形图:
3-D Clustered Bar
3-D 簇状条形
3-D Stacked Bar
3-D 堆叠棒
3-D 100% Stacked Bar
3-D 100%
堆叠棒材
Cylinder Charts:
圆柱图:
Clustered Horizontal Cylinder
簇状卧式圆柱体
Stacked Horizontal Cylinder
堆叠式卧式气缸
100% Stacked Horizontal
Cylinder
100%堆叠卧式气缸
Cone Charts:
圆锥图:
Clustered Horizontal Cone
簇状水平锥体
Stacked Horizontal Cone
堆叠水平锥体
100% Stacked Horizontal Cone
100% 堆叠水平锥体
Pyramid Charts:
金字塔图:
Clustered Horizontal Pyramid
簇状水平金字塔
Stacked Horizontal Pyramid
堆叠水平金字塔
100% Stacked Horizontal
Pyramid
100%堆叠水平金字塔
2-D
Area Charts:
二维面积图:
Area
面积
Stacked Area
堆叠面积
100% Stacked Area
100% 堆叠面积
3-D Area Charts:
二维面积图:
3-D Area
3-D 区域
3-D Stacked Area
3-D 堆叠区域
3-D 100% Stacked Area
3-D 100%
堆叠面积
Scatter
散射
Scatter with Smooth Lines and
Markers
使用平滑线条和标记进行散射
Scatter with Smooth Lines
具有平滑线条的散射
Scatter with Straight Lines and
Markers
使用直线和标记散射
Scatter with Straight Lines
直线散点
Bubble
泡沫
3-D Bubble
3-D 气泡
High-Low-Close
最高价-最低价-收盘价
Open-High-Low-Close
开盘-最高价-最低价-收盘价
Volume-High-Low-Close
成交量-最高价-最低价-收盘价
Volume-Open-High-Low-Close
成交量-开盘价-最高价-最低价-收盘价
Radar
雷达
Radar with Markers
带标记的雷达
Filled Radar
填充雷达
Box
and Whisker
箱须
Waterfall
瀑布
Histogram
直方图
Pareto
帕累托
Funnel
漏斗
Sunburst
旭日图
Treemap
树状图
SpreadSheet API
还为下面列出的图表提供有限的支持。您可以在 API 中加载/保存这些图表、创建和修改它们,但不能打印这些图表或将这些图表导出为 PDF。
下图显示了图表元素。您可以添加或删除这些元素来自定义图表布局。
创建图表时,电子表格会根据源范围内的行数和列数在图表上绘制数据:
如果源范围的行数多于列数,则第一列为类别轴(X 轴)提供标签,第一行包含系列名称。序列值按列排列。
如果源范围中不包括标签和/或序列名称,则图表将在类别轴上显示数据点的序列号,并使用默认序列名称(系列 1、系列 2、...、系列 N)。
如果源范围的列数多于行数,或者行数和列数相同,则第一行为类别轴(X 轴)提供标签,第一列包含系列名称。序列值按行排列。
如果源范围中不包括标签和/或序列名称,则图表将在类别轴上显示数据点的序列号,并使用默认序列名称(系列 1、系列 2、...、系列 N)。
可以使用 ChartObject.SwitchRowColumn 方法更改用于在图表上绘制数据序列的默认方向(无论序列值是从列还是行中获取),或者使用 direction 参数调用 ChartObject.SelectData 方法来指定如何检索序列值。
下表列出了如何在工作表上排列数据以创建特定图表。
图表类型 | 数据排列 |
折线图、柱形图、条形图、面积图、曲面图或雷达图 |
在列或行中: |
饼图 |
使用排列在一列或一行中的单个值系列。另一列或另一行包含数据标签。 |
甜甜圈图 |
在一列或多列或行中,并且一列或一行包含数据标签。 |
散点图或气泡图 |
在列或行中。将 x 值放在第一列或第一行中,将相应的 y 值放在相邻的列或行中。 对于气泡图,添加指定气泡大小的列或行。
|
股票图表 |
以与股票图表名称相同的顺序排列的列或行。 |
图表集合 (ChartCollection) 将图表存储在工作表中。可以使用 Worksheet.Charts 属性访问工作表的图表集合,并使用集合的 ChartCollection.Add 方法创建图表。ChartType 枚举值指定图表类型。
使用以下方法之一指定图表的数据:
将包含图表数据的单元格区域传递给 ChartCollection.Add 方法。有关如何组织源范围内的数据以创建特定图表的信息,请参阅以下部分:排列工作表数据以创建图表。
Vb.Net
Dim chart As DevExpress.Spreadsheet.Charts.Chart = worksheet.Charts.Add(DevExpress.Spreadsheet.Charts.ChartType.ColumnClustered, worksheet("B2:F6"))
C# |
DevExpress.Spreadsheet.Charts.Chart chart = worksheet.Charts.Add(DevExpress.Spreadsheet.Charts.ChartType.ColumnClustered, worksheet["B2:F6"]); |
将包含图表数据的单元格区域传递给 ChartObject.SelectData 方法。此方法还允许您指定数据方向:序列值是按列 (ChartDataDirection.Column) 排列还是按行 (ChartDataDirection.Row) 排列。
Vb.Net |
'创建一个列图表 Dim chart As DevExpress.Spreadsheet.Charts.Chart = worksheet.Charts.Add(DevExpress.Spreadsheet.Charts.ChartType.ColumnClustered) '为图表选择数据并指定数据方向。 chart.SelectData(worksheet("B2:F6"), DevExpress.Spreadsheet.Charts.ChartDataDirection.Row) |
C# |
// 创建一个列图表 DevExpress.Spreadsheet.Charts.Chart chart = worksheet.Charts.Add(DevExpress.Spreadsheet.Charts.ChartType.ColumnClustered); // 为图表选择数据并指定数据方向。 chart.SelectData(worksheet["B2:F6"], DevExpress.Spreadsheet.Charts.ChartDataDirection.Row); |
使用 SeriesCollection.Add 方法重载将数据系列添加到图表的系列集合 (ChartObject.Series) 中。通过这些方法,您可以绘制非连续像元区域中包含的数据。您可以显式指定每个系列的名称、参数和值。
Vb.Net |
'创建一个列图表 Dim chart As DevExpress.Spreadsheet.Charts.Chart = worksheet.Charts.Add(DevExpress.Spreadsheet.Charts.ChartType.ColumnClustered) '向图表中添加两个数据系列. chart.Series.Add(worksheet("D2"), worksheet("B3:B6"), worksheet("D3:D6")) chart.Series.Add(worksheet("F2"), worksheet("B3:B6"), worksheet("F3:F6")) |
C# |
// 创建一个列图表 DevExpress.Spreadsheet.Charts.Chart chart = worksheet.Charts.Add(DevExpress.Spreadsheet.Charts.ChartType.ColumnClustered); // 向图表中添加两个数据系列. chart.Series.Add(worksheet["D2"], worksheet["B3:B6"], worksheet["D3:D6"]); chart.Series.Add(worksheet["F2"], worksheet["B3:B6"], worksheet["F3:F6"]); |
ChartData
对象指定在图表上绘制的数据。您还可以使用数字、字符串或布尔文本数组作为图表的数据源。ChartData 支持从 CellValue
对象数组进行隐式转换。您可以使用这些对象来指定数值、字符串或布尔值,而无需强制转换。使用 ChartData.FromArray 方法将 CellValue
类型数组转换为图表数据,或将这些数组直接分配给序列的参数和值。
Vb.Net |
'创建一个列图表 Dim chart As DevExpress.Spreadsheet.Charts.Chart = worksheet.Charts.Add(DevExpress.Spreadsheet.Charts.ChartType.ColumnClustered) '添加绑定到一组文字数据的序列。 Dim literalSeries As DevExpress.Spreadsheet.Charts.Series = chart.Series.Add(New DevExpress.Spreadsheet.CellValue() { "Jan", "Feb", "Mar", "Apr", "May", "Jun" }, New DevExpress.Spreadsheet.CellValue() { 50, 100, 30, 104, 87, 150 }) |
C# |
// 创建一个列图表 DevExpress.Spreadsheet.Charts.Chart chart = worksheet.Charts.Add(DevExpress.Spreadsheet.Charts.ChartType.ColumnClustered); // 添加绑定到一组文字数据的序列。 DevExpress.Spreadsheet.Charts.Series literalSeries = chart.Series.Add(new DevExpress.Spreadsheet.CellValue[] { "Jan", "Feb", "Mar", "Apr", "May", "Jun" }, new DevExpress.Spreadsheet.CellValue[] { 50, 100, 30, 104, 87, 150 }); |
每个图表都有一个关联的 ChartView。创建图表时会自动创建此对象。它合并了相同类型的数据序列 (ChartView.Series) 并包含自定义选项。ChartView 对象是 Chart.Views 集合的成员。一个图表可以有多个 ChartView 对象(组合图表)。若要创建组合图,请使用 Series.ChangeType 方法更改现有序列的类型。如果指定的类型与其他序列类型不兼容,则电子表格将清除 ChartViewCollection 并创建一个新的 ChartView 对象以显示所有图表系列。此对象的类型与修改后的数据序列相同。以下主题包含兼容图表类型的列表,并介绍如何创建组合图表:如何:创建和修改图表。
创建图表后,您可以使用电子表格图表 API 成员更改图表的布局和外观。
下表列出了您可以在图表上执行的操作。
执行此任务 | 使用这些 API 成员 | 例 |
更改图表的源数据 | Chart.SelectData Series.Arguments Series.Values |
如何:创建和修改图表 |
添加或删除数据序列 | SeriesCollection.Add SeriesCollection.Remove SeriesCollection.RemoveAt SeriesCollection.Clear |
如何:创建和修改图表 |
更改图表上的数据方向 | Chart.SwitchRowColumn |
如何:创建和修改图表 |
更改数据序列的顺序 | Series.BringForward Series.SendBackward Series.BringToFront Series.SendToBack |
如何:创建和修改图表 |
更改图表类型 | Chart.ChangeType |
如何:创建和修改图表 |
更改序列类型 | Series.ChangeType |
如何:创建和修改图表 |
在单独的工作表(图表工作表)上创建图表, 或将现有图表移动到新图表工作表 |
Workbook.ChartSheets ChartSheetCollection.Add Chart.MoveToNewChartSheet |
如何:创建图表工作表 如何:将图表移动到图表工作表 |
显示或隐藏主轴,调整它们的位置和方向 | Chart.PrimaryAxes Axis Axis.Visible Axis.Position Axis.Scaling.Orientation |
如何:更改图表轴的显示 |
添加轴标题 | Axis.Title Axis.Title.Visible Axis.Title.SetValue Axis.Title.SetReference |
如何:更改图表轴的显示 |
更改轴缩放比例,以及在轴上设置数字格式 | Axis.Scaling AxisScaling.Min AxisScaling.Max AxisScaling.LogScale AxisScaling.LogBase Axis.NumberFormat |
如何:更改图表轴的显示 |
显示辅助轴 | Series.AxisGroup AxisGroup.Secondary Chart.SecondaryAxes |
如何:更改图表轴的显示 |
显示或隐藏网格线 | Axis.MajorGridlines Axis.MinorGridlines |
如何:更改图表轴的显示 |
添加图表标题 | Chart.Title ChartTitle.Visible ChartTitle.SetValue ChartTitle.SetReference |
如何:显示图表标题 |
显示或隐藏图表图例,指定其位置,自定义图例条目 | Chart.Legend Legend.Visible Legend.Position Legend.CustomEntries |
如何:显示或隐藏图表图例 |
显示 整个图表的数据标签或单个系列/数据点 | ChartView.DataLabels DataLabelPosition Series.UseCustomDataLabels Series.CustomDataLabels |
如何:显示数据标签并设置其格式 |
将数字格式应用于数据标签 | ChartView.DataLabels.NumberFormat |
如何:显示数据标签并设置其格式 |
应用图表样式 | Chart.Style |
如何:设置图表元素的格式 |
填充图表元素 | ShapeFormatBase.Fill ShapeOutlineFill.SetNoFill ShapeOutlineFill.SetSolidFill ShapeOutlineFill.SetGradientFill ShapeFill.SetPatternFill |
如何:设置图表元素的格式 如何:更改序列点的外观 |
设置图表元素轮廓的格式 | ShapeFormatBase.Outline ShapeOutlineFill.SetSolidFill ShapeOutlineFill.SetNoFill ShapeOutline.Width ShapeOutline.CapType ShapeOutline.Dashing ShapeOutline.JoinType ShapeOutline.CompoundType |
如何:设置图表元素的格式 |
设置图表元素文本的格式 | Chart.Font ShapeTextFormat.Font |
如何:设置图表元素的格式 |
对图表应用保护 | Chart.Options.Protection |
如何:保护图表 |
另见
电子表格图表示例
如何:在电子表格文档 API 中创建 Excel
2016 图表