📜  如何使用Java从 Excel 中的数据透视表创建数据透视图?

📅  最后修改于: 2022-05-13 01:54:18.340000             🧑  作者: Mango

如何使用Java从 Excel 中的数据透视表创建数据透视图?

数据透视图用于轻松分析表格数据(无需公式),它为您提供了原始数据的全景图。它允许您使用各种类型的图表和布局来分析数据。在涉及大量数据的业务演示中,它被认为是最好的图表。要将数据透视图添加到 Excel 工作表,您需要使用 WorksheetChartsCollection.add 方法。在创建数据透视图之前首先需要了解如何使用Java在 excel 中创建数据透视表。现在让我们讨论使用 Free Spire.XLS for Java API 在Java中的 Excel 文件中创建数据透视图的步骤。

分步实施

第 1 步:加载 Excel 文件

Workbook workbook = new Workbook()
String workbookName = "Geeks_For_Geeks.xlsx";
workbook.loadFromFile(workbookName);

第 2 步:获取第一个工作表

Worksheet sheet = workbook.getWorksheets().get(0);

第 3 步:获取工作表中的第一个数据透视表

IPivotTable pivotTable = sheet.getPivotTables().get(0);

步骤 4:将基于数据透视表的聚集柱形图添加到第二个工作表

Chart chart = workbook.getWorksheets().get(1).getCharts().add(ExcelChartType.ColumnClustered, pivotTable);

第 5 步:设置图表位置

chart.setTopRow(2);
chart.setBottomRow(15);

第 6 步:设置图表标题

chart.setChartTitle("Total");

第 7 步:保存结果文件

workbook.saveToFile(workbookName, ExcelVersion.Version2013);

让我们编写Java程序从电子表格中的数据透视表创建数据透视图。

Java
import com.spire.xls.*;
import com.spire.xls.core.IPivotTable;
  
class GFG {
    public static void main(String[] args)
    {
        // Load the Excel file
        Workbook workbook = new Workbook();
        String workbookName = "Geeks_For_Geeks.xlsx";
        workbook.loadFromFile(workbookName);
  
        // Get the first worksheet
        Worksheet sheet = workbook.getWorksheets().get(0);
        
        // get the first pivot table in the worksheet
        IPivotTable pivotTable
            = sheet.getPivotTables().get(0);
  
        // Add a clustered column chart based on the pivot
        // table to the second worksheet
        Chart chart
            = workbook.getWorksheets()
                  .get(1)
                  .getCharts()
                  .add(ExcelChartType.ColumnClustered,
                       pivotTable);
        
        // Set chart position
        chart.setTopRow(2);
        chart.setBottomRow(15);
        
        // Set chart title
        chart.setChartTitle("Total");
  
        // Save the result file
        workbook.saveToFile(workbookName,
                            ExcelVersion.Version2013);
        System.out.println(workbookName
                           + " is written successfully");
    }
}


输出:程序成功执行时的控制台窗口。

GeeksForGeeks.xlsx is written successfully.

输出:在工作簿上(excel文件)

使用 Java 从 Excel 中的数据透视表创建数据透视图