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 中創建數據透視表的步驟。
- 使用 Workbook 類創建新的或加載現有的 Excel 文件。
- 用數據填充工作表(可選)。
- 使用 Worksheet.getPivotTables() 方法將數據透視表集合放入 PivotTableCollection 對像中。
- 使用 PivotTableCollection.add(string, string, string) 方法添加一個新的數據透視表,並在 PivotTable 對像中獲取其引用。
- 設置總計、格式等選項。
- 使用 PivotTable.addFieldToArea(int, int) 方法將字段添加到區域。
- 使用 Workbook.save(string) 方法保存工作簿。
以下代碼示例顯示如何在 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數據
數據透視表
在 Java 中使用 Excel 數據透視表生成圖表
以下是在 Java 中使用 Excel 數據透視表生成圖表的步驟。
- 使用 Workbook 類創建新的或加載現有的 Excel 文件。
- 填充工作表(可選)。
- 使用 Workbook.getWorksheets().add(SheetType.CHART) 添加圖表類型的新工作表,並在 Worksheet 對像中獲取其引用。
- 使用 Worksheet.getCharts().add() 方法添加新圖表,並在 Chart 對像中獲取其引用。
- 使用 Chart.setPivotSource(string) 方法將數據透視表設置為圖表的數據源。
- 使用 Workbook.save(string) 方法保存工作簿。
以下代碼示例顯示如何使用 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 的更多信息。如果您有任何疑問,請隨時通過我們的 論壇 告訴我們。