Diagramme für PowerPoint-Präsentationen auf Android erstellen oder aktualisieren
Übersicht
Dieser Artikel beschreibt, wie man PowerPoint-Präsentationsdiagramme in Java erstellt. Sie können die Diagramme in Java auch aktualisieren. Er behandelt folgende Themen.
Chart: Normal
- Java PowerPoint-Diagramm erstellen
- Java Präsentationsdiagramm erstellen
- Java PowerPoint-Präsentationsdiagramm erstellen
Chart: Scattered
- Java Scatter-Diagramm erstellen
- Java PowerPoint-Scatter-Diagramm erstellen
- Java PowerPoint-Präsentations-Scatter-Diagramm erstellen
Chart: Pie
- Java Kreisdiagramm erstellen
- Java PowerPoint-Kreisdiagramm erstellen
- Java PowerPoint-Präsentations-Kreisdiagramm erstellen
Chart: Tree Map
- Java Tree‑Map-Diagramm erstellen
- Java PowerPoint‑Tree‑Map-Diagramm erstellen
- Java PowerPoint‑Präsentations‑Tree‑Map-Diagramm erstellen
Chart: Stock
- Java Aktien‑Diagramm erstellen
- Java PowerPoint‑Aktien‑Diagramm erstellen
- Java PowerPoint‑Präsentations‑Aktien‑Diagramm erstellen
Chart: Box and Whisker
- Java Box‑and‑Whisker‑Diagramm erstellen
- Java PowerPoint‑Box‑and‑Whisker‑Diagramm erstellen
- Java PowerPoint‑Präsentations‑Box‑and‑Whisker‑Diagramm erstellen
Chart: Funnel
- Java Trichter‑Diagramm erstellen
- Java PowerPoint‑Trichter‑Diagramm erstellen
- Java PowerPoint‑Präsentations‑Trichter‑Diagramm erstellen
Chart: Sunburst
- Java Sunburst‑Diagramm erstellen
- Java PowerPoint‑Sunburst‑Diagramm erstellen
- Java PowerPoint‑Präsentations‑Sunburst‑Diagramm erstellen
Chart: Histogram
- Java Histogramm‑Diagramm erstellen
- Java PowerPoint‑Histogramm‑Diagramm erstellen
- Java PowerPoint‑Präsentations‑Histogramm‑Diagramm erstellen
Chart: Radar
- Java Radar‑Diagramm erstellen
- Java PowerPoint‑Radar‑Diagramm erstellen
- Java PowerPoint‑Präsentations‑Radar‑Diagramm erstellen
Chart: Multi Category
- Java Mehrkategorie‑Diagramm erstellen
- Java PowerPoint‑Mehrkategorie‑Diagramm erstellen
- Java PowerPoint‑Präsentations‑Mehrkategorie‑Diagramm erstellen
Chart: Map
- Java Karten‑Diagramm erstellen
- Java PowerPoint‑Karten‑Diagramm erstellen
- Java PowerPoint‑Präsentations‑Karten‑Diagramm erstellen
Action: Update Chart
- Java PowerPoint‑Diagramm aktualisieren
- Java Präsentations‑Diagramm aktualisieren
- Java PowerPoint‑Präsentations‑Diagramm aktualisieren
Diagramm erstellen
Diagramme helfen Menschen, Daten schnell zu visualisieren und Erkenntnisse zu gewinnen, die aus einer Tabelle oder Kalkulationstabelle nicht sofort ersichtlich sind.
Warum Diagramme erstellen?
Durch Diagramme können Sie
- große Datenmengen auf einer einzigen Folie einer Präsentation aggregieren, kondensieren oder zusammenfassen
- Muster und Trends in Daten aufzeigen
- die Richtung und das Momentum von Daten über die Zeit oder bezogen auf eine spezifische Einheit erkennen
- Ausreißer, Aberationen, Abweichungen, Fehler, unsinnige Daten usw. identifizieren
- komplexe Daten kommunizieren oder präsentieren
In PowerPoint können Sie Diagramme über die Einfügefunktion erstellen, die Vorlagen für viele Diagrammtypen bereitstellt. Mit Aspose.Slides können Sie reguläre Diagramme (basierend auf gängigen Diagrammtypen) und benutzerdefinierte Diagramme erzeugen.
Erstellen von normalen Diagrammen
Schritte: Diagramm erstellen
- Schritte: PowerPoint-Diagramm in Java erstellen
- Schritte: Präsentationsdiagramm in Java erstellen
- Schritte: PowerPoint‑Präsentationsdiagramm in Java erstellen
Code‑Schritte:
- Erzeugen Sie eine Instanz der Klasse Presentation.
- Holen Sie sich einen Folien‑Verweis über dessen Index.
- Fügen Sie ein Diagramm mit einigen Daten hinzu und geben Sie den gewünschten Diagrammtyp an.
- Fügen Sie dem Diagramm einen Titel hinzu.
- Greifen Sie auf das Arbeitsblatt der Diagrammdaten zu.
- Löschen Sie alle Standard‑Serien und -Kategorien.
- Fügen Sie neue Serien und Kategorien hinzu.
- Fügen Sie neue Diagrammdaten für die Diagrammserien hinzu.
- Definieren Sie eine Füllfarbe für die Diagrammserien.
- Fügen Sie Beschriftungen für die Diagrammserien hinzu.
- Schreiben Sie die geänderte Präsentation als PPTX‑Datei.
Dieser Java‑Code zeigt, wie man ein normales Diagramm erstellt:
// Instanziiert eine Präsentationsklasse, die eine PPTX-Datei darstellt
Presentation pres = new Presentation();
try {
// Greift auf die erste Folie zu
ISlide sld = pres.getSlides().get_Item(0);
// Fügt ein Diagramm mit Standarddaten hinzu
IChart chart = sld.getShapes().addChart(ChartType.ClusteredColumn, 0, 0, 500, 500);
// Setzt den Diagrammtitel
chart.getChartTitle().addTextFrameForOverriding("Sample Title");
chart.getChartTitle().getTextFrameForOverriding().getTextFrameFormat().setCenterText(NullableBool.True);
chart.getChartTitle().setHeight(20);
chart.hasTitle();
// Setzt die erste Serie, um Werte anzuzeigen
chart.getChartData().getSeries().get_Item(0).getLabels().getDefaultDataLabelFormat().setShowValue(true);
// Legt den Index für das Diagrammdatenblatt fest
int defaultWorksheetIndex = 0;
// Holt das Diagrammdaten-Arbeitsblatt
IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
// Löscht die standardmäßig erzeugten Serien und Kategorien
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
int s = chart.getChartData().getSeries().size();
s = chart.getChartData().getCategories().size();
// Fügt neue Serien hinzu
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 1, "Series 1"),chart.getType());
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 2, "Series 2"),chart.getType());
// Fügt neue Kategorien hinzu
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 1, 0, "Caetegoty 1"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 2, 0, "Caetegoty 2"));
chart.getChartData().getCategories().add(fact.getCell(defaultWorksheetIndex, 3, 0, "Caetegoty 3"));
// Nimmt die erste Diagrammserie
IChartSeries series = chart.getChartData().getSeries().get_Item(0);
// Füllt nun die Seriendaten
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 1, 20));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 50));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 30));
// Setzt die Füllfarbe für die Serie
series.getFormat().getFill().setFillType(FillType.Solid);
series.getFormat().getFill().getSolidFillColor().setColor(Color.RED);
// Nimmt die zweite Diagrammserie
series = chart.getChartData().getSeries().get_Item(1);
// Füllt die Seriendaten
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 2, 30));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 2, 10));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 2, 60));
// Setzt die Füllfarbe für die Serie
series.getFormat().getFill().setFillType(FillType.Solid);
series.getFormat().getFill().getSolidFillColor().setColor(Color.GREEN);
//Erstelle benutzerdefinierte Beschriftungen für jede Kategorie für die neue Serie
// Setzt die erste Beschriftung, um den Kategorienamen anzuzeigen
IDataLabel lbl = series.getDataPoints().get_Item(0).getLabel();
lbl.getDataLabelFormat().setShowCategoryName(true);
lbl = series.getDataPoints().get_Item(1).getLabel();
lbl.getDataLabelFormat().setShowSeriesName(true);
// Zeigt den Wert für die dritte Beschriftung
lbl = series.getDataPoints().get_Item(2).getLabel();
lbl.getDataLabelFormat().setShowValue(true);
lbl.getDataLabelFormat().setShowSeriesName(true);
lbl.getDataLabelFormat().setSeparator("/");
// Speichert die Präsentation mit Diagramm
pres.save("output.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Erstellen von Scatter‑Diagrammen
Scatter‑Diagramme (auch Streudiagramme oder X‑Y‑Grafiken genannt) werden häufig verwendet, um Muster zu prüfen oder Korrelationen zwischen zwei Variablen zu demonstrieren.
Sie sollten ein Scatter‑Diagramm verwenden, wenn
- Sie gepaarte numerische Daten besitzen
- Sie zwei gut zueinander passende Variablen haben
- Sie feststellen wollen, ob zwei Variablen miteinander verbunden sind
- Sie eine unabhängige Variable mit mehreren Werten für eine abhängige Variable besitzen
Schritte: Scatter‑Diagramm in Java erstellen | Schritte: PowerPoint‑Scatter‑Diagramm in Java erstellen | Schritte: PowerPoint‑Präsentations‑Scatter‑Diagramm in Java erstellen
- Bitte folgen Sie den oben beschriebenen Schritten in Erstellen von normalen Diagrammen
- Für den dritten Schritt fügen Sie ein Diagramm mit einigen Daten hinzu und wählen als Diagrammtyp einen der folgenden:
- ChartType.ScatterWithMarkers - Stellt ein Scatter‑Diagramm dar.
- ChartType.ScatterWithSmoothLinesAndMarkers - Stellt ein Scatter‑Diagramm mit gekrümmten Linien und Datenmarkern dar.
- ChartType.ScatterWithSmoothLines - Stellt ein Scatter‑Diagramm mit gekrümmten Linien ohne Datenmarker dar.
- ChartType.ScatterWithStraightLinesAndMarkers - Stellt ein Scatter‑Diagramm mit geraden Linien und Datenmarkern dar.
- ChartType.ScatterWithStraightLines - Stellt ein Scatter‑Diagramm mit geraden Linien ohne Datenmarker dar.
Dieser Java‑Code zeigt, wie man Scatter‑Diagramme mit unterschiedlichen Marker‑Serien erstellt:
// Instanziiert eine Präsentationsklasse, die eine PPTX-Datei darstellt
Presentation pres = new Presentation();
try {
// Greift auf die erste Folie zu
ISlide slide = pres.getSlides().get_Item(0);
// Erstellt das Standarddiagramm
IChart chart = slide.getShapes().addChart(ChartType.ScatterWithSmoothLines, 0, 0, 400, 400);
// Ermittelt den Index des Standard-Datenblatt für das Diagramm
int defaultWorksheetIndex = 0;
// Ermittelt das Diagrammdaten-Arbeitsblatt
IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
// Löscht die Demo-Serien
chart.getChartData().getSeries().clear();
// Fügt neue Serien hinzu
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 1, 1, "Series 1"), chart.getType());
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 1, 3, "Series 2"), chart.getType());
// Nimmt die erste Diagrammserie
IChartSeries series = chart.getChartData().getSeries().get_Item(0);
// Fügt der Serie einen neuen Punkt (1:3) hinzu
series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 1), fact.getCell(defaultWorksheetIndex, 2, 2, 3));
// Fügt einen neuen Punkt (2:10) hinzu
series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 2), fact.getCell(defaultWorksheetIndex, 3, 2, 10));
// Ändert den Serientyp
series.setType(ChartType.ScatterWithStraightLinesAndMarkers);
// Ändert den Marker der Diagrammserie
series.getMarker().setSize(10);
series.getMarker().setSymbol(MarkerStyleType.Star);
// Nimmt die zweite Diagrammserie
series = chart.getChartData().getSeries().get_Item(1);
// Fügt dort einen neuen Punkt (5:2) hinzu
series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 2, 3, 5), fact.getCell(defaultWorksheetIndex, 2, 4, 2));
// Fügt einen neuen Punkt (3:1) hinzu
series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 3, 3, 3), fact.getCell(defaultWorksheetIndex, 3, 4, 1));
// Fügt einen neuen Punkt (2:2) hinzu
series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 4, 3, 2), fact.getCell(defaultWorksheetIndex, 4, 4, 2));
// Fügt einen neuen Punkt (5:1) hinzu
series.getDataPoints().addDataPointForScatterSeries(fact.getCell(defaultWorksheetIndex, 5, 3, 5), fact.getCell(defaultWorksheetIndex, 5, 4, 1));
// Ändert den Marker der Diagrammserie
series.getMarker().setSize(10);
series.getMarker().setSymbol(MarkerStyleType.Circle);
pres.save("AsposeChart_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Erstellen von Kreis‑Diagrammen
Kreis‑Diagramme eignen sich am besten, um das Verhältnis von Teil zu Ganzem darzustellen, insbesondere wenn die Daten kategoriale Beschriftungen mit numerischen Werten enthalten. Sollten Ihre Daten jedoch viele Teile oder Beschriftungen haben, sollten Sie stattdessen ein Balken‑Diagramm in Betracht ziehen.
Schritte: Kreis‑Diagramm in Java erstellen | Schritte: PowerPoint‑Kreis‑Diagramm in Java erstellen | Schritte: PowerPoint‑Präsentations‑Kreis‑Diagramm in Java erstellen
- Erzeugen Sie eine Instanz der Klasse Presentation.
- Holen Sie sich den Referenz‑Verweis einer Folie über deren Index.
- Fügen Sie ein Diagramm mit Standarddaten und dem gewünschten Typ (hier: ChartType.Pie) hinzu.
- Greifen Sie auf die Diagrammdaten‑IChartDataWorkbook zu.
- Löschen Sie die Standard‑Serien und -Kategorien.
- Fügen Sie neue Serien und Kategorien hinzu.
- Fügen Sie neue Diagrammdaten für die Serien hinzu.
- Fügen Sie neue Punkte für das Diagramm hinzu und definieren Sie benutzerdefinierte Farben für die Sektoren des Kreis‑Diagramms.
- Setzen Sie Beschriftungen für die Serien.
- Setzen Sie Leitlinien für die Serien‑Beschriftungen.
- Setzen Sie den Rotationswinkel für die Kreis‑Diagramm‑Folien.
- Schreiben Sie die geänderte Präsentation in eine PPTX‑Datei.
Dieser Java‑Code zeigt, wie man ein Kreis‑Diagramm erstellt:
// Instanziert eine Präsentationsklasse, die eine PPTX-Datei darstellt
Presentation pres = new Presentation();
try {
// Greift auf die erste Folie zu
ISlide slides = pres.getSlides().get_Item(0);
// Fügt ein Diagramm mit Standarddaten hinzu
IChart chart = slides.getShapes().addChart(ChartType.Pie, 100, 100, 400, 400);
// Setzt den Diagrammtitel
chart.getChartTitle().addTextFrameForOverriding("Sample Title");
chart.getChartTitle().getTextFrameForOverriding().getTextFrameFormat().setCenterText(NullableBool.True);
chart.getChartTitle().setHeight(20);
chart.setTitle(true);
// Setzt die erste Serie, um Werte anzuzeigen
chart.getChartData().getSeries().get_Item(0).getLabels().getDefaultDataLabelFormat().setShowValue(true);
// Legt den Index für das Diagrammdatenblatt fest
int defaultWorksheetIndex = 0;
// Holt das Diagrammdaten-Arbeitsblatt
IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
// Löscht die standardmäßig erzeugten Serien und Kategorien
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
// Fügt neue Kategorien hinzu
chart.getChartData().getCategories().add(fact.getCell(0, 1, 0, "First Qtr"));
chart.getChartData().getCategories().add(fact.getCell(0, 2, 0, "2nd Qtr"));
chart.getChartData().getCategories().add(fact.getCell(0, 3, 0, "3rd Qtr"));
// Fügt neue Serien hinzu
IChartSeries series = chart.getChartData().getSeries().add(fact.getCell(0, 0, 1, "Series 1"), chart.getType());
//Füllt die Seriendaten
series.getDataPoints().addDataPointForPieSeries(fact.getCell(defaultWorksheetIndex, 1, 1, 20));
series.getDataPoints().addDataPointForPieSeries(fact.getCell(defaultWorksheetIndex, 2, 1, 50));
series.getDataPoints().addDataPointForPieSeries(fact.getCell(defaultWorksheetIndex, 3, 1, 30));
// Funktioniert nicht in neuer Version
// Hinzufügen neuer Punkte und Festlegen der Sektorfarbe
// series.IsColorVaried = true;
chart.getChartData().getSeriesGroups().get_Item(0).setColorVaried(true);
IChartDataPoint point = series.getDataPoints().get_Item(0);
point.getFormat().getFill().setFillType(FillType.Solid);
point.getFormat().getFill().getSolidFillColor().setColor(Color.CYAN);
// Setzt die Sektorgrenze
point.getFormat().getLine().getFillFormat().setFillType(FillType.Solid);
point.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.GRAY);
point.getFormat().getLine().setWidth(3.0);
point.getFormat().getLine().setStyle(LineStyle.ThinThick);
point.getFormat().getLine().setDashStyle(LineDashStyle.DashDot);
IChartDataPoint point1 = series.getDataPoints().get_Item(1);
point1.getFormat().getFill().setFillType(FillType.Solid);
point1.getFormat().getFill().getSolidFillColor().setColor(Color.ORANGE);
// Setzt die Sektorgrenze
point1.getFormat().getLine().getFillFormat().setFillType(FillType.Solid);
point1.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.BLUE);
point1.getFormat().getLine().setWidth(3.0);
point1.getFormat().getLine().setStyle(LineStyle.Single);
point1.getFormat().getLine().setDashStyle(LineDashStyle.LargeDashDot);
IChartDataPoint point2 = series.getDataPoints().get_Item(2);
point2.getFormat().getFill().setFillType(FillType.Solid);
point2.getFormat().getFill().getSolidFillColor().setColor(Color.YELLOW);
// Setzt die Sektorgrenze
point2.getFormat().getLine().getFillFormat().setFillType(FillType.Solid);
point2.getFormat().getLine().getFillFormat().getSolidFillColor().setColor(Color.RED);
point2.getFormat().getLine().setWidth(2.0);
point2.getFormat().getLine().setStyle(LineStyle.ThinThin);
point2.getFormat().getLine().setDashStyle(LineDashStyle.LargeDashDotDot);
// Erstellt benutzerdefinierte Beschriftungen für jede Kategorie der neuen Serie
IDataLabel lbl1 = series.getDataPoints().get_Item(0).getLabel();
// lbl.ShowCategoryName = true;
lbl1.getDataLabelFormat().setShowValue(true);
IDataLabel lbl2 = series.getDataPoints().get_Item(1).getLabel();
lbl2.getDataLabelFormat().setShowValue(true);
lbl2.getDataLabelFormat().setShowLegendKey(true);
lbl2.getDataLabelFormat().setShowPercentage(true);
IDataLabel lbl3 = series.getDataPoints().get_Item(2).getLabel();
lbl3.getDataLabelFormat().setShowSeriesName(true);
lbl3.getDataLabelFormat().setShowPercentage(true);
// Zeigt Führungs‑Linien für das Diagramm
series.getLabels().getDefaultDataLabelFormat().setShowLeaderLines(true);
// Setzt den Rotationswinkel für die Kuchendiagramm‑Sektoren
chart.getChartData().getSeriesGroups().get_Item(0).setFirstSliceAngle(180);
// Speichert die Präsentation mit einem Diagramm
pres.save("PieChart_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Erstellen von Linien‑Diagrammen
Linien‑Diagramme (auch Liniendiagramme genannt) eignen sich besonders, wenn Sie Änderungen von Werten über die Zeit darstellen möchten. Mit einem Linien‑Diagramm können Sie viele Daten gleichzeitig vergleichen, Änderungen und Trends über die Zeit verfolgen, Anomalien in Datenreihen hervorheben usw.
- Erzeugen Sie eine Instanz der Klasse Presentation.
- Holen Sie sich den Referenz‑Verweis einer Folie über deren Index.
- Fügen Sie ein Diagramm mit Standarddaten und dem gewünschten Typ (hier:
ChartType.Line) hinzu. - Greifen Sie auf das Diagrammdaten‑IChartDataWorkbook zu.
- Löschen Sie die Standard‑Serien und -Kategorien.
- Fügen Sie neue Serien und Kategorien hinzu.
- Fügen Sie neue Diagrammdaten für die Serien hinzu.
- Schreiben Sie die geänderte Präsentation in eine PPTX‑Datei.
Dieser Java‑Code zeigt, wie man ein Linien‑Diagramm erstellt:
Presentation pres = new Presentation();
try {
IChart lineChart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Line, 10, 50, 600, 350);
pres.save("lineChart.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Standardmäßig werden die Punkte in einem Linien‑Diagramm durch gerade, durchgehende Linien verbunden. Wenn Sie die Punkte stattdessen durch Striche verbinden möchten, können Sie den gewünschten Strich‑Typ wie folgt angeben:
IChart lineChart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Line, 10, 50, 600, 350);
for (IChartSeries series : lineChart.getChartData().getSeries())
{
series.getFormat().getLine().setDashStyle(LineDashStyle.Dash);
}
Erstellen von Tree‑Map‑Diagrammen
Tree‑Map‑Diagramme eignen sich besonders für Verkaufsdaten, wenn Sie die relative Größe von Datenkategorien darstellen und gleichzeitig schnell die Elemente hervorheben möchten, die große Beiträge zu jeder Kategorie leisten.
Schritte: Tree‑Map‑Diagramm in Java erstellen | Schritte: PowerPoint‑Tree‑Map‑Diagramm in Java erstellen | Schritte: PowerPoint‑Präsentations‑Tree‑Map‑Diagramm in Java erstellen
- Erzeugen Sie eine Instanz der Presentation Klasse.
- Holen Sie sich den Referenz‑Verweis einer Folie über deren Index.
- Fügen Sie ein Diagramm mit Standarddaten und dem gewünschten Typ (hier: ChartType.TreeMap) hinzu.
- Greifen Sie auf die Diagrammdaten‑IChartDataWorkbook zu.
- Löschen Sie die Standard‑Serien und -Kategorien.
- Fügen Sie neue Serien und Kategorien hinzu.
- Fügen Sie neue Diagrammdaten für die Serien hinzu.
- Schreiben Sie die geänderte Präsentation in eine PPTX‑Datei.
Dieser Java‑Code zeigt, wie man ein Tree‑Map‑Diagramm erstellt:
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Treemap, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
//Zweig 1
IChartCategory leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C1", "Leaf1"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem1");
leaf.getGroupingLevels().setGroupingItem(2, "Branch1");
chart.getChartData().getCategories().add(wb.getCell(0, "C2", "Leaf2"));
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C3", "Leaf3"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem2");
chart.getChartData().getCategories().add(wb.getCell(0, "C4", "Leaf4"));
//Zweig 2
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C5", "Leaf5"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem3");
leaf.getGroupingLevels().setGroupingItem(2, "Branch2");
chart.getChartData().getCategories().add(wb.getCell(0, "C6", "Leaf6"));
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C7", "Leaf7"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem4");
chart.getChartData().getCategories().add(wb.getCell(0, "C8", "Leaf8"));
IChartSeries series = chart.getChartData().getSeries().add(ChartType.Treemap);
series.getLabels().getDefaultDataLabelFormat().setShowCategoryName(true);
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D1", 4));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D2", 5));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D3", 3));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D4", 6));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D5", 9));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D6", 9));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D7", 4));
series.getDataPoints().addDataPointForTreemapSeries(wb.getCell(0, "D8", 3));
series.setParentLabelLayout(ParentLabelLayoutType.Overlapping);
pres.save("Treemap.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Erstellen von Aktien‑Diagrammen
Schritte: Aktien‑Diagramm in Java erstellen | Schritte: PowerPoint‑Aktien‑Diagramm in Java erstellen | Schritte: PowerPoint‑Präsentations‑Aktien‑Diagramm in Java erstellen
- Erzeugen Sie eine Instanz der Presentation Klasse.
- Holen Sie sich den Referenz‑Verweis einer Folie über deren Index.
- Fügen Sie ein Diagramm mit Standarddaten und dem gewünschten Typ (ChartType.OpenHighLowClose) hinzu.
- Greifen Sie auf die Diagrammdaten‑IChartDataWorkbook zu.
- Löschen Sie die Standard‑Serien und -Kategorien.
- Fügen Sie neue Serien und Kategorien hinzu.
- Fügen Sie neue Diagrammdaten für die Serien hinzu.
- Definieren Sie das Format der HiLowLines.
- Schreiben Sie die geänderte Präsentation in eine PPTX‑Datei.
Beispiel‑Java‑Code zum Erstellen eines Aktien‑Diagramms:
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.OpenHighLowClose, 50, 50, 600, 400, false);
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();
chart.getChartData().getCategories().add(wb.getCell(0, 1, 0, "A"));
chart.getChartData().getCategories().add(wb.getCell(0, 2, 0, "B"));
chart.getChartData().getCategories().add(wb.getCell(0, 3, 0, "C"));
chart.getChartData().getSeries().add(wb.getCell(0, 0, 1, "Open"), chart.getType());
chart.getChartData().getSeries().add(wb.getCell(0, 0, 2, "High"), chart.getType());
chart.getChartData().getSeries().add(wb.getCell(0, 0, 3, "Low"), chart.getType());
chart.getChartData().getSeries().add(wb.getCell(0, 0, 4, "Close"), chart.getType());
IChartSeries series = chart.getChartData().getSeries().get_Item(0);
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 1, 1, 72));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 2, 1, 25));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 3, 1, 38));
series = chart.getChartData().getSeries().get_Item(1);
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 1, 2, 172));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 2, 2, 57));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 3, 2, 57));
series = chart.getChartData().getSeries().get_Item(2);
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 1, 3, 12));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 2, 3, 12));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 3, 3, 13));
series = chart.getChartData().getSeries().get_Item(3);
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 1, 4, 25));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 2, 4, 38));
series.getDataPoints().addDataPointForStockSeries(wb.getCell(0, 3, 4, 50));
chart.getChartData().getSeriesGroups().get_Item(0).getUpDownBars().setUpDownBars(true);
chart.getChartData().getSeriesGroups().get_Item(0).getHiLowLinesFormat().getLine().getFillFormat().setFillType(FillType.Solid);
for (IChartSeries ser : chart.getChartData().getSeries())
{
ser.getFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
}
pres.save("output.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Erstellen von Box‑and‑Whisker‑Diagrammen
Schritte: Box‑and‑Whisker‑Diagramm in Java erstellen | Schritte: PowerPoint‑Box‑and‑Whisker‑Diagramm in Java erstellen | Schritte: PowerPoint‑Präsentations‑Box‑and‑Whisker‑Diagramm in Java erstellen
- Erzeugen Sie eine Instanz der Presentation Klasse.
- Holen Sie sich den Referenz‑Verweis einer Folie über deren Index.
- Fügen Sie ein Diagramm mit Standarddaten und dem gewünschten Typ (ChartType.BoxAndWhisker) hinzu.
- Greifen Sie auf die Diagrammdaten‑IChartDataWorkbook zu.
- Löschen Sie die Standard‑Serien und -Kategorien.
- Fügen Sie neue Serien und Kategorien hinzu.
- Fügen Sie neue Diagrammdaten für die Serien hinzu.
- Schreiben Sie die geänderte Präsentation in eine PPTX‑Datei.
Dieser Java‑Code zeigt, wie man ein Box‑and‑Whisker‑Diagramm erstellt:
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.BoxAndWhisker, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
chart.getChartData().getCategories().add(wb.getCell(0, "A1", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A2", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A3", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A4", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A5", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A6", "Category 1"));
IChartSeries series = chart.getChartData().getSeries().add(ChartType.BoxAndWhisker);
series.setQuartileMethod(QuartileMethodType.Exclusive);
series.setShowMeanLine(true);
series.setShowMeanMarkers(true);
series.setShowInnerPoints(true);
series.setShowOutlierPoints(true);
series.getDataPoints().addDataPointForBoxAndWhiskerSeries(wb.getCell(0, "B1", 15));
series.getDataPoints().addDataPointForBoxAndWhiskerSeries(wb.getCell(0, "B2", 41));
series.getDataPoints().addDataPointForBoxAndWhiskerSeries(wb.getCell(0, "B3", 16));
series.getDataPoints().addDataPointForBoxAndWhiskerSeries(wb.getCell(0, "B4", 10));
series.getDataPoints().addDataPointForBoxAndWhiskerSeries(wb.getCell(0, "B5", 23));
series.getDataPoints().addDataPointForBoxAndWhiskerSeries(wb.getCell(0, "B6", 16));
pres.save("BoxAndWhisker.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Erstellen von Trichter‑Diagrammen
Schritte: Trichter‑Diagramm in Java erstellen | Schritte: PowerPoint‑Trichter‑Diagramm in Java erstellen | Schritte: PowerPoint‑Präsentations‑Trichter‑Diagramm in Java erstellen
- Erzeugen Sie eine Instanz der Presentation Klasse.
- Holen Sie sich den Referenz‑Verweis einer Folie über deren Index.
- Fügen Sie ein Diagramm mit Standarddaten und dem gewünschten Typ (ChartType.Funnel) hinzu.
- Schreiben Sie die geänderte Präsentation in eine PPTX‑Datei.
Der Java‑Code zeigt, wie man ein Trichter‑Diagramm erstellt:
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Funnel, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
chart.getChartData().getCategories().add(wb.getCell(0, "A1", "Category 1"));
chart.getChartData().getCategories().add(wb.getCell(0, "A2", "Category 2"));
chart.getChartData().getCategories().add(wb.getCell(0, "A3", "Category 3"));
chart.getChartData().getCategories().add(wb.getCell(0, "A4", "Category 4"));
chart.getChartData().getCategories().add(wb.getCell(0, "A5", "Category 5"));
chart.getChartData().getCategories().add(wb.getCell(0, "A6", "Category 6"));
IChartSeries series = chart.getChartData().getSeries().add(ChartType.Funnel);
series.getDataPoints().addDataPointForFunnelSeries(wb.getCell(0, "B1", 50));
series.getDataPoints().addDataPointForFunnelSeries(wb.getCell(0, "B2", 100));
series.getDataPoints().addDataPointForFunnelSeries(wb.getCell(0, "B3", 200));
series.getDataPoints().addDataPointForFunnelSeries(wb.getCell(0, "B4", 300));
series.getDataPoints().addDataPointForFunnelSeries(wb.getCell(0, "B5", 400));
series.getDataPoints().addDataPointForFunnelSeries(wb.getCell(0, "B6", 500));
pres.save("Funnel.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Erstellen von Sunburst‑Diagrammen
Schritte: Sunburst‑Diagramm in Java erstellen | Schritte: PowerPoint‑Sunburst‑Diagramm in Java erstellen | Schritte: PowerPoint‑Präsentations‑Sunburst‑Diagramm in Java erstellen
- Erzeugen Sie eine Instanz der Presentation Klasse.
- Holen Sie sich den Referenz‑Verweis einer Folie über deren Index.
- Fügen Sie ein Diagramm mit Standarddaten und dem gewünschten Typ (hier: ChartType.sunburst) hinzu.
- Schreiben Sie die geänderte Präsentation in eine PPTX‑Datei.
Dieser Java‑Code zeigt, wie man ein Sunburst‑Diagramm erstellt:
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Sunburst, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
//Zweig 1
IChartCategory leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C1", "Leaf1"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem1");
leaf.getGroupingLevels().setGroupingItem(2, "Branch1");
chart.getChartData().getCategories().add(wb.getCell(0, "C2", "Leaf2"));
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C3", "Leaf3"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem2");
chart.getChartData().getCategories().add(wb.getCell(0, "C4", "Leaf4"));
//Zweig 2
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C5", "Leaf5"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem3");
leaf.getGroupingLevels().setGroupingItem(2, "Branch2");
chart.getChartData().getCategories().add(wb.getCell(0, "C6", "Leaf6"));
leaf = chart.getChartData().getCategories().add(wb.getCell(0, "C7", "Leaf7"));
leaf.getGroupingLevels().setGroupingItem(1, "Stem4");
chart.getChartData().getCategories().add(wb.getCell(0, "C8", "Leaf8"));
IChartSeries series = chart.getChartData().getSeries().add(ChartType.Sunburst);
series.getLabels().getDefaultDataLabelFormat().setShowCategoryName(true);
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D1", 4));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D2", 5));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D3", 3));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D4", 6));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D5", 9));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D6", 9));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D7", 4));
series.getDataPoints().addDataPointForSunburstSeries(wb.getCell(0, "D8", 3));
pres.save("Sunburst.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Erstellen von Histogramm‑Diagrammen
Schritte: Histogramm‑Diagramm in Java erstellen | Schritte: PowerPoint‑Histogramm‑Diagramm in Java erstellen | Schritte: PowerPoint‑Präsentations‑Histogramm‑Diagramm in Java erstellen
- Erzeugen Sie eine Instanz der Presentation Klasse.
- Holen Sie sich den Referenz‑Verweis einer Folie über deren Index.
- Fügen Sie ein Diagramm mit Standarddaten und dem gewünschten Typ (ChartType.Histogram) hinzu.
- Greifen Sie auf die Diagrammdaten‑IChartDataWorkbook zu.
- Löschen Sie die Standard‑Serien und -Kategorien.
- Fügen Sie neue Serien und Kategorien hinzu.
- Schreiben Sie die geänderte Präsentation in eine PPTX‑Datei.
Dieser Java‑Code zeigt, wie man ein Histogramm‑Diagramm erstellt:
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Histogram, 50, 50, 500, 400);
chart.getChartData().getCategories().clear();
chart.getChartData().getSeries().clear();
IChartDataWorkbook wb = chart.getChartData().getChartDataWorkbook();
wb.clear(0);
IChartSeries series = chart.getChartData().getSeries().add(ChartType.Histogram);
series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A1", 15));
series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A2", -41));
series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A3", 16));
series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A4", 10));
series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A5", -23));
series.getDataPoints().addDataPointForHistogramSeries(wb.getCell(0, "A6", 16));
chart.getAxes().getHorizontalAxis().setAggregationType(AxisAggregationType.Automatic;)
pres.save("Histogram.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Erstellen von Radar‑Diagrammen
Schritte: Radar‑Diagramm in Java erstellen | Schritte: PowerPoint‑Radar‑Diagramm in Java erstellen | Schritte: PowerPoint‑Präsentations‑Radar‑Diagramm in Java erstellen
- Erzeugen Sie eine Instanz der Presentation Klasse.
- Holen Sie sich den Referenz‑Verweis einer Folie über deren Index.
- Fügen Sie ein Diagramm mit einigen Daten hinzu und geben Sie als Diagrammtyp
ChartType.Radaran. - Schreiben Sie die geänderte Präsentation in eine PPTX‑Datei.
Dieser Java‑Code zeigt, wie man ein Radar‑Diagramm erstellt:
Presentation pres = new Presentation();
try {
pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Radar, 20, 20, 400, 300);
pres.save("Radar-chart.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Erstellen von Mehrkategorie‑Diagrammen
Schritte: Mehrkategorie‑Diagramm in Java erstellen | Schritte: PowerPoint‑Mehrkategorie‑Diagramm in Java erstellen | Schritte: PowerPoint‑Präsentations‑Mehrkategorie‑Diagramm in Java erstellen
- Erzeugen Sie eine Instanz der Presentation Klasse.
- Holen Sie sich den Referenz‑Verweis einer Folie über deren Index.
- Fügen Sie ein Diagramm mit Standarddaten und dem gewünschten Typ (ChartType.ClusteredColumn) hinzu.
- Greifen Sie auf die Diagrammdaten‑IChartDataWorkbook zu.
- Löschen Sie die Standard‑Serien und -Kategorien.
- Fügen Sie neue Serien und Kategorien hinzu.
- Fügen Sie neue Diagrammdaten für die Serien hinzu.
- Schreiben Sie die geänderte Präsentation in eine PPTX‑Datei.
Dieser Java‑Code zeigt, wie man ein Mehrkategorie‑Diagramm erstellt:
Presentation pres = new Presentation();
try {
IChart ch = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.ClusteredColumn, 100, 100, 600, 450);
ch.getChartData().getSeries().clear();
ch.getChartData().getCategories().clear();
IChartDataWorkbook fact = ch.getChartData().getChartDataWorkbook();
fact.clear(0);
int defaultWorksheetIndex = 0;
IChartCategory category = ch.getChartData().getCategories().add(fact.getCell(0, "c2", "A"));
category.getGroupingLevels().setGroupingItem(1, "Group1");
category = ch.getChartData().getCategories().add(fact.getCell(0, "c3", "B"));
category = ch.getChartData().getCategories().add(fact.getCell(0, "c4", "C"));
category.getGroupingLevels().setGroupingItem(1, "Group2");
category = ch.getChartData().getCategories().add(fact.getCell(0, "c5", "D"));
category = ch.getChartData().getCategories().add(fact.getCell(0, "c6", "E"));
category.getGroupingLevels().setGroupingItem(1, "Group3");
category = ch.getChartData().getCategories().add(fact.getCell(0, "c7", "F"));
category = ch.getChartData().getCategories().add(fact.getCell(0, "c8", "G"));
category.getGroupingLevels().setGroupingItem(1, "Group4");
category = ch.getChartData().getCategories().add(fact.getCell(0, "c9", "H"));
// Serien hinzufügen
IChartSeries series = ch.getChartData().getSeries().add(fact.getCell(0, "D1", "Series 1"),
ChartType.ClusteredColumn);
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D2", 10));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D3", 20));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D4", 30));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D5", 40));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D6", 50));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D7", 60));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D8", 70));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, "D9", 80));
// Präsentation mit Diagramm speichern
pres.save("AsposeChart_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Erstellen von Karten‑Diagrammen
Ein Karten‑Diagramm visualisiert ein Gebiet, das Daten enthält. Karten‑Diagramme eignen sich am besten, um Daten oder Werte über geografische Regionen hinweg zu vergleichen.
Schritte: Karten‑Diagramm in Java erstellen | Schritte: PowerPoint‑Karten‑Diagramm in Java erstellen | Schritte: PowerPoint‑Präsentations‑Karten‑Diagramm in Java erstellen
Dieser Java‑Code zeigt, wie man ein Karten‑Diagramm erstellt:
Presentation pres = new Presentation();
try {
IChart chart = pres.getSlides().get_Item(0).getShapes().addChart(ChartType.Map, 50, 50, 500, 400);
pres.save("mapChart.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Erstellen von Kombinations‑Diagrammen
Ein Kombinations‑Diagramm (oder Combo‑Diagramm) kombiniert zwei oder mehr Diagrammtypen in einem einzigen Diagramm. Dieses Diagramm ermöglicht es, Unterschiede zwischen zwei oder mehr Datensätzen hervorzuheben, zu vergleichen oder zu untersuchen, um Beziehungen zu erkennen.

Der folgende Java‑Code zeigt, wie das oben abgebildete Kombinations‑Diagramm in einer PowerPoint‑Präsentation erstellt wird:
static void createComboChart() {
Presentation presentation = new Presentation();
ISlide slide = presentation.getSlides().get_Item(0);
try {
IChart chart = createChartWithFirstSeries(slide);
addSecondSeriesToChart(chart);
addThirdSeriesToChart(chart);
setPrimaryAxesFormat(chart);
setSecondaryAxesFormat(chart);
presentation.save("combo-chart.pptx", SaveFormat.Pptx);
} finally {
presentation.dispose();
}
}
static IChart createChartWithFirstSeries(ISlide slide) {
IChart chart = slide.getShapes().addChart(ChartType.ClusteredColumn, 50, 50, 600, 400);
// Setzt den Diagrammtitel.
chart.setTitle(true);
chart.getChartTitle().addTextFrameForOverriding("Chart Title");
chart.getChartTitle().setOverlay(false);
IParagraph titleParagraph = chart.getChartTitle().getTextFrameForOverriding().getParagraphs().get_Item(0);
IPortionFormat titleFormat = titleParagraph.getParagraphFormat().getDefaultPortionFormat();
titleFormat.setFontBold(NullableBool.False);
titleFormat.setFontHeight(18f);
// Setzt die Diagrammlegende.
chart.getLegend().setPosition(LegendPositionType.Bottom);
chart.getLegend().getTextFormat().getPortionFormat().setFontHeight(12f);
// Löscht die standardmäßig erzeugten Serien und Kategorien.
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
int worksheetIndex = 0;
IChartDataWorkbook workbook = chart.getChartData().getChartDataWorkbook();
// Fügt neue Kategorien hinzu.
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 1, 0, "Category 1"));
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 2, 0, "Category 2"));
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 3, 0, "Category 3"));
chart.getChartData().getCategories().add(workbook.getCell(worksheetIndex, 4, 0, "Category 4"));
// Fügt die erste Serie hinzu.
IChartDataCell seriesNameCell = workbook.getCell(worksheetIndex, 0, 1, "Series 1");
IChartSeries series = chart.getChartData().getSeries().add(seriesNameCell, chart.getType());
series.getParentSeriesGroup().setOverlap((byte)-25);
series.getParentSeriesGroup().setGapWidth(220);
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 1, 1, 4.3));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 2, 1, 2.5));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 3, 1, 3.5));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 4, 1, 4.5));
return chart;
}
static void addSecondSeriesToChart(IChart chart) {
IChartDataWorkbook workbook = chart.getChartData().getChartDataWorkbook();
final int worksheetIndex = 0;
IChartDataCell seriesNameCell = workbook.getCell(worksheetIndex, 0, 2, "Series 2");
IChartSeries series = chart.getChartData().getSeries().add(seriesNameCell, ChartType.ClusteredColumn);
series.getParentSeriesGroup().setOverlap((byte)-25);
series.getParentSeriesGroup().setGapWidth(220);
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 1, 2, 2.4));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 2, 2, 4.4));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 3, 2, 1.8));
series.getDataPoints().addDataPointForBarSeries(workbook.getCell(worksheetIndex, 4, 2, 2.8));
}
static void addThirdSeriesToChart(IChart chart) {
IChartDataWorkbook workbook = chart.getChartData().getChartDataWorkbook();
final int worksheetIndex = 0;
IChartDataCell seriesNameCell = workbook.getCell(worksheetIndex, 0, 3, "Series 3");
IChartSeries series = chart.getChartData().getSeries().add(seriesNameCell, ChartType.Line);
series.getDataPoints().addDataPointForLineSeries(workbook.getCell(worksheetIndex, 1, 3, 2.0));
series.getDataPoints().addDataPointForLineSeries(workbook.getCell(worksheetIndex, 2, 3, 2.0));
series.getDataPoints().addDataPointForLineSeries(workbook.getCell(worksheetIndex, 3, 3, 3.0));
series.getDataPoints().addDataPointForLineSeries(workbook.getCell(worksheetIndex, 4, 3, 5.0));
series.setPlotOnSecondAxis(true);
}
static void setPrimaryAxesFormat(IChart chart) {
// Setzt die horizontale Achse.
IAxis horizontalAxis = chart.getAxes().getHorizontalAxis();
horizontalAxis.getTextFormat().getPortionFormat().setFontHeight(12f);
horizontalAxis.getFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
setAxisTitle(horizontalAxis, "X Axis");
// Setzt die vertikale Achse.
IAxis verticalAxis = chart.getAxes().getVerticalAxis();
verticalAxis.getTextFormat().getPortionFormat().setFontHeight(12f);
verticalAxis.getFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
setAxisTitle(verticalAxis, "Y Axis 1");
// Setzt die Farbe der vertikalen Hauptgitternetzlinien.
ILineFillFormat majorGridLinesFormat = verticalAxis.getMajorGridLinesFormat().getLine().getFillFormat();
majorGridLinesFormat.setFillType(FillType.Solid);
majorGridLinesFormat.getSolidFillColor().setColor(new Color(217, 217, 217));
}
static void setSecondaryAxesFormat(IChart chart) {
// Setzt die sekundäre horizontale Achse.
IAxis secondaryHorizontalAxis = chart.getAxes().getSecondaryHorizontalAxis();
secondaryHorizontalAxis.setPosition(AxisPositionType.Bottom);
secondaryHorizontalAxis.setCrossType(CrossesType.Maximum);
secondaryHorizontalAxis.setVisible(false);
secondaryHorizontalAxis.getMajorGridLinesFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
secondaryHorizontalAxis.getMinorGridLinesFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
// Setzt die sekundäre vertikale Achse.
IAxis secondaryVerticalAxis = chart.getAxes().getSecondaryVerticalAxis();
secondaryVerticalAxis.setPosition(AxisPositionType.Right);
secondaryVerticalAxis.getTextFormat().getPortionFormat().setFontHeight(12f);
secondaryVerticalAxis.getFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
secondaryVerticalAxis.getMajorGridLinesFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
secondaryVerticalAxis.getMinorGridLinesFormat().getLine().getFillFormat().setFillType(FillType.NoFill);
setAxisTitle(secondaryVerticalAxis, "Y Axis 2");
}
static void setAxisTitle(IAxis axis, String axisTitle) {
axis.setTitle(true);
axis.getTitle().setOverlay(false);
IParagraph titleParagraph = axis.getTitle().addTextFrameForOverriding(axisTitle).getParagraphs().get_Item(0);
IPortionFormat titleFormat = titleParagraph.getParagraphFormat().getDefaultPortionFormat();
titleFormat.setFontBold(NullableBool.False);
titleFormat.setFontHeight(12f);
}
Diagramme aktualisieren
Schritte: PowerPoint‑Diagramm in Java aktualisieren | Schritte: Präsentations‑Diagramm in Java aktualisieren | Schritte: PowerPoint‑Präsentations‑Diagramm in Java aktualisieren
- Instanziieren Sie eine Presentation‑Klasse, die die Präsentation mit dem zu aktualisierenden Diagramm darstellt.
- Holen Sie sich den Referenz‑Verweis einer Folie über deren Index.
- Durchlaufen Sie alle Shapes, um das gewünschte Diagramm zu finden.
- Greifen Sie auf das Diagrammdaten‑Arbeitsblatt zu.
- Ändern Sie die Daten der Diagramm‑Serien, indem Sie die Serienwerte anpassen.
- Fügen Sie eine neue Serie hinzu und füllen Sie die Daten.
- Schreiben Sie die geänderte Präsentation als PPTX‑Datei.
Dieser Java‑Code zeigt, wie man ein Diagramm aktualisiert:
Presentation pres = new Presentation();
try {
// Zugriff auf die erste Folie
ISlide sld = pres.getSlides().get_Item(0);
// Diagramm mit Standarddaten abrufen
IChart chart = (IChart)sld.getShapes().get_Item(0);
// Festlegen des Index des Diagrammdatenblatts
int defaultWorksheetIndex = 0;
// Abrufen des Diagrammdaten‑Arbeitsblatts
IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
// Ändern des Diagramm‑Kategorienamens
fact.getCell(defaultWorksheetIndex, 1, 0, "Modified Category 1");
fact.getCell(defaultWorksheetIndex, 2, 0, "Modified Category 2");
// Erste Diagrammserie auswählen
IChartSeries series = chart.getChartData().getSeries().get_Item(0);
// Jetzt werden die Seriendaten aktualisiert
fact.getCell(defaultWorksheetIndex, 0, 1, "New_Series1");// Seriennamen ändern
series.getDataPoints().get_Item(0).getValue().setData(90);
series.getDataPoints().get_Item(1).getValue().setData(123);
series.getDataPoints().get_Item(2).getValue().setData(44);
// Zweite Diagrammserie auswählen
series = chart.getChartData().getSeries().get_Item(1);
// Jetzt werden die Seriendaten aktualisiert
fact.getCell(defaultWorksheetIndex, 0, 2, "New_Series2");// Seriennamen ändern
series.getDataPoints().get_Item(0).getValue().setData(23);
series.getDataPoints().get_Item(1).getValue().setData(67);
series.getDataPoints().get_Item(2).getValue().setData(99);
// Jetzt eine neue Serie hinzufügen
chart.getChartData().getSeries().add(fact.getCell(defaultWorksheetIndex, 0, 3, "Series 3"), chart.getType());
// Dritte Diagrammserie auswählen
series = chart.getChartData().getSeries().get_Item(2);
// Jetzt werden die Seriendaten befüllt
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 1, 3, 20));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 2, 3, 50));
series.getDataPoints().addDataPointForBarSeries(fact.getCell(defaultWorksheetIndex, 3, 3, 30));
chart.setType(ChartType.ClusteredCylinder);
// Präsentation mit Diagramm speichern
pres.save("AsposeChartModified_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Datenbereich für Diagramme festlegen
Um den Datenbereich für ein Diagramm festzulegen, gehen Sie wie folgt vor:
- Instanziieren Sie eine Presentation‑Klasse, die die Präsentation mit dem Diagramm darstellt.
- Holen Sie sich den Referenz‑Verweis einer Folie über deren Index.
- Durchlaufen Sie alle Shapes, um das gewünschte Diagramm zu finden.
- Greifen Sie auf die Diagrammdaten zu und setzen Sie den Bereich.
- Speichern Sie die geänderte Präsentation als PPTX‑Datei.
Dieser Java‑Code zeigt, wie man den Datenbereich für ein Diagramm festlegt:
Presentation pres = new Presentation();
try {
ISlide slide = pres.getSlides().get_Item(0);
IChart chart = (IChart)slide.getShapes().get_Item(0);
chart.getChartData().setRange("Sheet1!A1:B4");
pres.save("SetDataRange_out.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}
Standard‑Marker in Diagrammen verwenden
Wenn Sie einen Standard‑Marker in Diagrammen verwenden, erhält jede Diagrammserie automatisch ein unterschiedliches Standard‑Marker‑Symbol.
Dieser Java‑Code zeigt, wie man einer Diagrammserie automatisch einen Marker zuweist:
Presentation pres = new Presentation();
try {
ISlide slide = pres.getSlides().get_Item(0);
IChart chart = slide.getShapes().addChart(ChartType.LineWithMarkers, 10, 10, 400, 400);
chart.getChartData().getSeries().clear();
chart.getChartData().getCategories().clear();
IChartDataWorkbook fact = chart.getChartData().getChartDataWorkbook();
chart.getChartData().getSeries().add(fact.getCell(0, 0, 1, "Series 1"), chart.getType());
IChartSeries series = chart.getChartData().getSeries().get_Item(0);
chart.getChartData().getCategories().add(fact.getCell(0, 1, 0, "C1"));
series.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 1, 1, 24));
chart.getChartData().getCategories().add(fact.getCell(0, 2, 0, "C2"));
series.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 2, 1, 23));
chart.getChartData().getCategories().add(fact.getCell(0, 3, 0, "C3"));
series.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 3, 1, -10));
chart.getChartData().getCategories().add(fact.getCell(0, 4, 0, "C4"));
series.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 4, 1, null));
chart.getChartData().getSeries().add(fact.getCell(0, 0, 2, "Series 2"), chart.getType());
// Nimmt die zweite Diagrammserie
IChartSeries series2 = chart.getChartData().getSeries().get_Item(1);
// Jetzt werden die Seriendaten befüllt
series2.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 1, 2, 30));
series2.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 2, 2, 10));
series2.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 3, 2, 60));
series2.getDataPoints().addDataPointForLineSeries(fact.getCell(0, 4, 2, 40));
chart.setLegend(true);
chart.getLegend().setOverlay(false);
pres.save("DefaultMarkersInChart.pptx", SaveFormat.Pptx);
} finally {
if (pres != null) pres.dispose();
}