Excel 电子表格中的数据透视表用于以交互方式汇总数据。假设您在工作表中有许多发票的数据。在这种情况下,您可以使用数据透视表来汇总按客户或产品分组的发票。在本文中,您将学习如何以编程方式处理 Excel 中的数据透视表。特别是,您将了解如何使用 Java 在 Excel 中创建数据透视表。此外,我们还将根据数据透视表生成图表。

在 Excel 中创建数据透视表的 Java API

为了创建 Excel 数据透视表,我们将使用 Aspose.Cells for Java。它是一个强大的 API,可让您在 Java 应用程序中生成、修改和转换 Excel 文件。您可以 下载 API 或使用以下 Maven 配置安装它。

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-cells</artifactId>
    <version>21.4</version>
</dependency>

使用 Java 在 Excel 中创建数据透视表

以下是使用 Java 在 Excel 中创建数据透视表的步骤。

以下代码示例显示了如何在 Excel 中添加数据透视表。

// 实例化工作簿对象
Workbook workbook = new Workbook("worksheet.xlsx");

// 访问工作表
Worksheet sheet2 = workbook.getWorksheets().get(1);

// 获取工作表中的数据透视表集合
PivotTableCollection pivotTables = sheet2.getPivotTables();

// 将数据透视表添加到工作表
int index = pivotTables.add("=Data!A1:F30", "B3", "PivotTable1");

// 访问新添加的数据透视表的实例
PivotTable pivotTable = pivotTables.get(index);

// 显示总计
pivotTable.setRowGrand(true);
pivotTable.setColumnGrand(true);

// 设置数据透视表自动格式化
pivotTable.setAutoFormat(true);

// 设置数据透视表自动格式化类型。
pivotTable.setAutoFormatType(PivotTableAutoFormatType.REPORT_6);

// 将第一个字段拖到行区域。
pivotTable.addFieldToArea(PivotFieldType.ROW, 0);

// 将第三个字段拖到行区域。
pivotTable.addFieldToArea(PivotFieldType.ROW, 2);

// 将第二个字段拖到行区域。
pivotTable.addFieldToArea(PivotFieldType.ROW, 1);

// 将第四个字段拖到列区域。
pivotTable.addFieldToArea(PivotFieldType.COLUMN, 3);

// 将第五个字段拖到数据区域。
pivotTable.addFieldToArea(PivotFieldType.DATA, 5);

// 设置第一个数据字段的数字格式
pivotTable.getDataFields().get(0).setNumber(7);

// 保存 Excel 文件
workbook.save("pivotTable.xls");

Excel 数据

excel数据透视表的数据源

数据透视表

在java中的excel中创建数据透视表

在 Java 中使用 Excel 数据透视表生成图表

以下是在 Java 中使用 Excel 数据透视表生成图表的步骤。

以下代码示例展示了如何使用 Excel 数据透视表生成图表。

 // 实例化工作簿对象
 Workbook workbook = new Workbook("pivotTable.xls");
 
 // 添加新工作表
 int sheetIndex = workbook.getWorksheets().add(SheetType.CHART);
 Worksheet sheet3 = workbook.getWorksheets().get(sheetIndex);
 
 // 为工作表命名
 sheet3.setName("PivotChart");
 
 // 添加柱形图
 int chartIndex = sheet3.getCharts().add(ChartType.COLUMN, 0, 5, 28, 16);
 Chart chart = sheet3.getCharts().get(chartIndex);
 
 // 设置数据透视图数据源
 chart.setPivotSource("PivotTable!PivotTable1");
 chart.setHidePivotFieldButtons(false);
 
 // 保存 Excel 文件
 workbook.save("pivotChart_test.xls");

获取免费 API 许可证

您可以获得免费的临时许可证 使用 API 而没有评估限制。

结论

在本文中,您学习了如何使用 Java 在 Excel 中创建数据透视表。此外,您还了解了如何使用 Excel 中的数据透视表生成图表。您可以使用 文档 探索有关 Java Excel API 的更多信息。如果您有任何问题,请随时通过我们的 论坛 告诉我们。

也可以看看