Kontingenční tabulky v excelových tabulkách se používají k interaktivnímu shrnutí dat. Předpokládejme, že máte v listu data několika faktur. V takovém případě můžete použít kontingenční tabulku k sečtení faktur seskupených podle zákazníků nebo produktů. V tomto článku se dozvíte, jak programově zacházet s kontingenčními tabulkami v Excelu. Zejména se dozvíte, jak vytvořit kontingenční tabulku v Excelu pomocí Java. Dále také vygenerujeme grafy na základě kontingenční tabulky.
- Java API pro práci s kontingenčními tabulkami aplikace Excel
- Vytvořte kontingenční tabulku v Excelu
- Generování grafu pomocí kontingenční tabulky
- Získejte bezplatnou licenci API
Java API pro vytvoření kontingenční tabulky v Excelu
K vytvoření kontingenční tabulky Excel použijeme Aspose.Cells for Java. Jedná se o výkonné rozhraní API, které vám umožňuje generovat, upravovat a převádět soubory aplikace Excel z vašich aplikací Java. Rozhraní API si můžete buď stáhnout, nebo jej nainstalovat pomocí následujících konfigurací 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>
Vytvořte kontingenční tabulku v Excelu pomocí Java
Následují kroky k vytvoření kontingenční tabulky v Excelu pomocí Java.
- Vytvořte nový nebo načtěte existující soubor Excel pomocí třídy Sešit.
- Naplňte list daty (volitelné).
- Získejte kolekci kontingenčních tabulek do objektu PivotTableCollection pomocí metody Worksheet.getPivotTables().
- Přidejte novou kontingenční tabulku pomocí metody PivotTableCollection.add(string, string, string) a získejte její odkaz v objektu PivotTable.
- Nastavte možnosti, jako je celkový součet, formátování atd.
- Přidejte pole do oblasti pomocí metody PivotTable.addFieldToArea(int, int).
- Uložte sešit pomocí metody Workbook.save(string).
Následující ukázka kódu ukazuje, jak přidat kontingenční tabulku v aplikaci Excel.
// Vytvořte instanci objektu sešitu
Workbook workbook = new Workbook("worksheet.xlsx");
// Přístup k listu
Worksheet sheet2 = workbook.getWorksheets().get(1);
// Získejte kolekci kontingenčních tabulek v listu
PivotTableCollection pivotTables = sheet2.getPivotTables();
// Přidejte do listu kontingenční tabulku
int index = pivotTables.add("=Data!A1:F30", "B3", "PivotTable1");
// Získejte přístup k instanci nově přidané kontingenční tabulky
PivotTable pivotTable = pivotTables.get(index);
// Ukažte celkové součty
pivotTable.setRowGrand(true);
pivotTable.setColumnGrand(true);
// Nastavit Kontingenční tabulka je automaticky formátována
pivotTable.setAutoFormat(true);
// Nastavte typ automatického formátu kontingenční tabulky.
pivotTable.setAutoFormatType(PivotTableAutoFormatType.REPORT_6);
// Přetáhněte první pole do oblasti řádku.
pivotTable.addFieldToArea(PivotFieldType.ROW, 0);
// Přetáhněte třetí pole do oblasti řádku.
pivotTable.addFieldToArea(PivotFieldType.ROW, 2);
// Přetáhněte druhé pole do oblasti řádku.
pivotTable.addFieldToArea(PivotFieldType.ROW, 1);
// Přetáhněte čtvrté pole do oblasti sloupců.
pivotTable.addFieldToArea(PivotFieldType.COLUMN, 3);
// Přetáhněte páté pole do datové oblasti.
pivotTable.addFieldToArea(PivotFieldType.DATA, 5);
// Nastavte formát čísla prvního datového pole
pivotTable.getDataFields().get(0).setNumber(7);
// Uložte soubor aplikace Excel
workbook.save("pivotTable.xls");
Data aplikace Excel
Kontingenční tabulka
Vygenerujte graf pomocí kontingenčních tabulek Excel v Javě
Následují kroky ke generování grafu pomocí kontingenčních tabulek Excelu v Javě.
- Vytvořte nový nebo načtěte existující soubor Excel pomocí třídy Sešit.
- Vyplňte pracovní list (volitelné).
- Přidejte nový list typu grafu pomocí Workbook.getWorksheets().add(SheetType.CHART) a získejte jeho odkaz v objektu Worksheet.
- Přidejte nový graf pomocí metody Worksheet.getCharts().add() a získejte jeho odkaz v objektu Chart.
- Nastavte kontingenční tabulku jako zdroj dat grafu pomocí metody Chart.setPivotSource(string).
- Uložte sešit pomocí metody Workbook.save(string).
Následující ukázka kódu ukazuje, jak vygenerovat graf pomocí kontingenční tabulky Excel.
// Vytvořte instanci objektu sešitu
Workbook workbook = new Workbook("pivotTable.xls");
// Přidejte nový list
int sheetIndex = workbook.getWorksheets().add(SheetType.CHART);
Worksheet sheet3 = workbook.getWorksheets().get(sheetIndex);
// Pojmenujte list
sheet3.setName("PivotChart");
// Přidejte sloupcový graf
int chartIndex = sheet3.getCharts().add(ChartType.COLUMN, 0, 5, 28, 16);
Chart chart = sheet3.getCharts().get(chartIndex);
// Nastavte zdroj dat kontingenčního grafu
chart.setPivotSource("PivotTable!PivotTable1");
chart.setHidePivotFieldButtons(false);
// Uložte soubor Excel
workbook.save("pivotChart_test.xls");
Získejte bezplatnou licenci API
Můžete získat bezplatnou dočasnou licenci k používání API bez omezení hodnocení.
Závěr
V tomto článku jste se naučili, jak vytvořit kontingenční tabulku v Excelu pomocí Java. Dále jste viděli, jak generovat grafy pomocí kontingenčních tabulek v Excelu. Více o Java Excel API můžete prozkoumat pomocí dokumentace. V případě jakýchkoli dotazů nás neváhejte kontaktovat prostřednictvím našeho fóra.