Arbeiten mit Diagrammen
Arbeiten mit Diagrammen
Aspose.Cells FOSS für Java bewahrt eingebettete Diagramme beim Laden und Speichern von XLSX-Arbeitsmappen. Sie können vorhandene Diagramme untersuchen, ihren Typ und ihre Position abfragen und programmgesteuert neue Standard-Diagramme hinzufügen. ChartEx Typen wie Waterfall, Treemap, Sunburst, Histogram, Box and Whisker, Funnel und Map werden beim Rundlauf erhalten, können jedoch nicht über den API erstellt werden.
Übersicht
Diagramme in einem Arbeitsblatt werden über das ChartCollection verwaltet, das über Worksheet.getCharts() aufgerufen wird. Jede Chart-Instanz gibt ihren Namen, den Diagrammtyp und ihre Zwei-Zellen-Ankerposition frei. Ein neues Diagramm wird mit ChartCollection.add(type, dataRange, upperLeftRow, upperLeftColumn, lowerRightRow, lowerRightColumn) eingefügt, das den Index des neu erstellten Diagramms zurückgibt.
Das ChartType-Enum identifiziert die Diagrammvariante (Balken, Linie, Kreis usw.). Hilfsmethoden ChartCollection.parseChartType(string) und ChartCollection.chartTypeToString(ChartType) konvertieren zwischen dem Enum und seiner String-Darstellung für Serialisierungs-Anwendungsfälle.
Wichtige Klassen
| Klasse | Beschreibung |
|---|---|
Chart | Stellt ein eingebettetes Diagramm in einem Arbeitsblatt dar. Lesezugriff auf Name, Typ und Zellankerposition. |
ChartCollection | Sammlung aller Diagramme in einem Arbeitsblatt. Unterstützt Zählen, Indexzugriff, Hinzufügen und Hilfsfunktionen zur Diagrammtyp-Konvertierung. |
ChartType | Enum, das die Diagrammvariante identifiziert (Balken, Säule, Linie, Kreis, Streuung usw.). |
ChartModel | Internes Serialisierungsmodell für ein Diagramm. Gibt rohe XML-Felder frei, die beim Laden/Speichern verwendet werden. |
Zugriff auf Diagramme in einem Arbeitsblatt
Holen Sie das ChartCollection von jedem Worksheet-Objekt über Worksheet.getCharts(). Verwenden Sie ChartCollection.getCount(), um zu bestimmen, wie viele Diagramme vorhanden sind. Einzelne Diagramme werden über ChartCollection.get(index) anhand eines nullbasierten Indexes zugegriffen.
Sobald Sie eine Chart-Referenz besitzen, können Sie lesen:
Chart.getName()— die interne Namenszeichenkette des Diagramms.Chart.getChartType()— derChartType-Enum-Wert.Chart.getUpperLeftRow()/Chart.getUpperLeftColumn()— die linke obere Ankerzelle.Chart.getLowerRightRow()/Chart.getLowerRightColumn()— die rechte untere Ankerzelle.Chart.getExtentCx()/Chart.getExtentCy()— die Diagrammabmessungen in EMUs.
Ein neues Diagramm hinzufügen
Verwenden Sie ChartCollection.add(type, dataRange, upperLeftRow, upperLeftColumn, lowerRightRow, lowerRightColumn), um ein neues Diagramm einzufügen. Die Methode gibt den ganzzahligen Index des Diagramms innerhalb der Sammlung zurück. Geben Sie einen ChartType-Wert für das type-Argument und eine Zellbereichszeichenkette (zum Beispiel A1:B5) für dataRange an.
Hinweis: ChartEx-Familientypen (Waterfall, Treemap, Sunburst, Histogram, Box and Whisker, Funnel, Map) werden beim Laden von XLSX-Dateien beibehalten, können jedoch nicht programmgesteuert über dieses API erstellt werden.
API Reference Zusammenfassung
Chart
| Methode | Rückgabetyp | Beschreibung |
|---|---|---|
getName() | String | Interner Name des Charts. |
getChartType() | ChartType | Der Enum-Wert der Chart-Variante. |
getUpperLeftRow() | int | Zeilenindex des oberen linken Ankers. |
getUpperLeftColumn() | int | Spaltenindex des oberen linken Ankers. |
getLowerRightRow() | int | Zeilenindex des unteren rechten Ankers. |
getLowerRightColumn() | int | Spaltenindex des Ankers unten rechts. |
getExtentCx() | long | Diagrammbreite in EMUs. |
getExtentCy() | long | Diagrammhöhe in EMUs. |
ChartCollection
| Methode | Rückgabetyp | Beschreibung |
|---|---|---|
getCount() | int | Anzahl der Diagramme im Arbeitsblatt. |
get(index) | Chart | Gibt das Diagramm am angegebenen nullbasierten Index zurück. |
add(type, dataRange, ...) | int | Fügt ein neues Diagramm hinzu; gibt dessen Index zurück. |
parseChartType(string) | ChartType | Konvertiert einen Zeichenkettennamen in einen ChartType-Enum-Wert. |
chartTypeToString(type) | String | Konvertiert einen ChartType-Enum-Wert in seinen Zeichenkettennamen. |
Einschränkungen
- ChartEx-Typen (Waterfall, Treemap, Sunburst, Histogram, Box and Whisker, Funnel, Map) werden unverändert weitergereicht, können jedoch nicht über das API erstellt werden.
- Die Bindungen der Diagrammdatenreihen können in dieser Version nicht geändert werden; das Diagramm wird basierend auf dem beim Erstellen angegebenen ursprünglichen Datenbereich gerendert.