使用图表

使用图表

Aspose.Cells FOSS for Java 在加载和保存 XLSX 工作簿时会保留嵌入的图表。您可以检查现有图表、查询其类型和位置,并以编程方式添加新的标准类型图表。ChartEx 类型,如 Waterfall、Treemap、Sunburst、Histogram、Box and Whisker、Funnel 和 Map,在往返过程中会被保留,但无法通过 API 创建。


概述

工作表中的图表通过 ChartCollection(通过 Worksheet.getCharts() 访问)进行管理。每个 Chart 实例公开其名称、图表类型以及其双单元格锚点位置。使用 ChartCollection.add(type, dataRange, upperLeftRow, upperLeftColumn, lowerRightRow, lowerRightColumn) 插入新图表,该方法返回新创建图表的索引。

ChartType 枚举标识图表变体(柱形、折线、饼图等)。辅助方法 ChartCollection.parseChartType(string)ChartCollection.chartTypeToString(ChartType) 在枚举和值的字符串表示之间进行转换,以用于序列化场景。


关键类

描述
Chart表示工作表中的嵌入式图表。提供对名称、类型以及单元格锚点位置的只读访问。
ChartCollection工作表上所有图表的集合。支持计数、索引访问、添加以及图表类型转换辅助函数。
ChartType枚举,用于标识图表变体(柱形图、条形图、折线图、饼图、散点图等)。
ChartModel图表的内部序列化模型。公开在加载/保存期间使用的原始 XML 字段。

访问工作表上的图表

通过 Worksheet.getCharts() 从任意 Worksheet 对象检索 ChartCollection。使用 ChartCollection.getCount() 确定存在多少图表。通过 ChartCollection.get(index) 使用基于零的索引访问各个图表。

一旦你拥有 Chart 引用,就可以读取:

  • Chart.getName() — 图表的内部名称字符串。
  • Chart.getChartType()ChartType 枚举值。
  • Chart.getUpperLeftRow() / Chart.getUpperLeftColumn() — 左上锚定单元格。
  • Chart.getLowerRightRow() / Chart.getLowerRightColumn() — 右下锚定单元格。
  • Chart.getExtentCx() / Chart.getExtentCy() — 图表在 EMU 中的范围。

添加新图表

使用 ChartCollection.add(type, dataRange, upperLeftRow, upperLeftColumn, lowerRightRow, lowerRightColumn) 插入新图表。该方法返回集合中该图表的整数索引。为 type 参数提供一个 ChartType 值,并为 dataRange 提供一个单元格范围字符串(例如 A1:B5)。

注意:加载 XLSX 文件时会保留 ChartEx-family 类型(Waterfall、Treemap、Sunburst、Histogram、Box and Whisker、Funnel、Map),但无法通过此 API 以编程方式创建。


API Reference 摘要

Chart

方法返回类型描述
getName()String图表的内部名称。
getChartType()ChartType图表变体枚举值。
getUpperLeftRow()int左上锚点的行索引。
getUpperLeftColumn()int左上锚点的列索引。
getLowerRightRow()int右下锚点的行索引。
getLowerRightColumn()int右下锚点的列索引。
getExtentCx()long图表宽度(单位为 EMU)。
getExtentCy()long图表高度(单位为 EMU)。

ChartCollection

方法返回类型描述
getCount()int工作表上的图表数量。
get(index)Chart返回给定零基索引处的图表。
add(type, dataRange, ...)int添加一个新图表;返回其索引。
parseChartType(string)ChartType将字符串名称转换为 ChartType 枚举值。
chartTypeToString(type)StringChartType 枚举值转换为其字符串名称。

限制

  • ChartEx 类型(Waterfall、Treemap、Sunburst、Histogram、Box and Whisker、Funnel、Map)会原样往返,但无法通过 API 创建。
  • 在此版本中,图表数据系列绑定不可修改;图表根据创建时提供的原始数据范围进行渲染。

另请参阅

 中文