<< Click to Display Table of Contents >> Navigation: Daten und Datensatz > Output aufbereiteter Daten > OfficeExport > Diagramme |
Es ist möglich, den Excel-Output von Tabellen via OfficeExport um Diagramme zu ergänzen. Grundsätzlich gibt es zwei Wege, Diagramme anzufordern: automatisch und einheitlich für alle Tabellen eines Tabellenbandes oder einzeln und explizit für ausgewählte Tabellen.
OFFICECHART erzeugt ein Diagramm, das sich auf die vorangehende Tabellendefinition bezieht. Auf einen Table-Befehl dürfen beliebig viele OFFICECHART-Anweisungen folgen. Für jedes Statement wird unter der entsprechenden Tabelle ein Standard-Excel- (bzw. LibreOffice-) Chart erzeugt.
OFFICECHARTDEFAULTS bietet die Möglichkeit, Layout-Standards für alle Diagramme eines Tabellenbandes anzulegen. Bei mehrfachem Aufruf von OFFICECHARTDEFAULTS gilt immer die letzte Version vor dem aktuellen Table-Statement. Einzelne Parameter können mit dem Nachschub Edit (Zwischen OFFICECHARTDEFAULTS und =) flexibel angepasst werden. OFFICECHARTDEFAULTS = ; löscht alle bisher gemachten Voreinstellungen.
Soll an jede Tabelle, die infolge einer OFFICECHARTDEFAULTS-Anweisung definiert wird, automatisch ein (gleichförmiges) Diagramm gefügt werden, wird AUTO = YES; im OFFICECHARTDEFAULTS -Aufruf ergänzt. AUTO = NO; schaltet diesen Automatismus entsprechend wieder ab.
Nach Aufstellungen der Syntax folgen Erläuterungen zu einigen systembedingten Einschränkungen für die Anwendung von OFFICECHART sowie Beispiele.
Zur Gestaltung eines Diagramms sind folgende Optionen verfügbar:
OFFICECHARTDEFAULTS [EDIT] bzw. OFFICECHART =
| <AUTO> (nur für OFFICECHARTDEFAULTS)
| <CHARTTITLE>
| <INVERSE>
| <POSITION>
| <LEGENDPOSITION>
| <FORM>
| <OPTION>
| <BACKGROUND>
| <FRAMECOLOR>
| <SIZE>
| <USE3D>
| <LABELS>
| <ROWS>
| <COLUMNS>;
Auto
Syntax:
AUTO : [YES | NO]
Mit dem Zusatz AUTO für das OFFICECHARTDEFAULTS-Statements wird das nachfolgend definierte Diagramm an jede Tabelle des Projektes angefügt.
ChartTitle
Syntax:
CHARTTITLE : <title>
CHARTTITLE benennt den Diagrammtitel.
Inverse
Syntax:
INVERSE : [YES | NO]
INVERSE : YES setzt die Labeltexte der X-Achse als Datenbeschriftung des Diagramms ein.
Keine INVERSE-Angabe gilt intern wie INVERSE : NO – es werden die Labeltexte der Y-Achse als Diagramm-Datenbeschriftung eingesetzt
Position
Syntax:
POSITION <excelcell>
Mit POSITION kann das Diagramm gezielt auf dem Sheet positioniert werden.
Mit 'Excelcel'> ist eine Zelle in der üblichen Excel-Notation (z.B. 'P7') gemeint. GESStabs wird das chart dann so anlegen, dass die linke obere ecke in dieser Zelle liegt. Ein OFFICECHART ohne POSITION-Angabe wird direkt unter die Tabelle bzw. das vorangegangene Diagramm positioniert.
LegenPosition
Syntax:
LEGENDPOSITION : [TOP | BOTTOM | LEFT | RIGHT]
LEGENDPOSITION richtet die Diagrammlegende über, unter, links oder rechts neben dem Diagramm aus.
Form
Syntax:
FORM : [BARS | COLUMNS | LINES | PIE]
Mit FORM wird der Diagrammtyp bestimmt. Zur Auswahl stehen Balken- (BARS), Säulen-(COLUMNS), Linien- (LINES) und Kreisdiagramme (PIE).
Beachte: In einem Pie-Chart kann nur eine einzelne Zeile oder Spalte abgebildet werden. Soll eine Zeile dargestellt werden, muss diese benannt und die Diagrammanforderung mit INVERSE = YES gekennzeichnet werden.
Option
Syntax:
OPTION : [CLUSTERED | STACKED | PERCENTSTACKED]
Eine OPTION spezifiziert den Diagrammtypen weiter: als gruppiertes (CLUSTERED), gestapeltes (STACKED) oder auf 100% abgebildetes gestapeltes (PERCENTSTACKED) Chart.
Background
Syntax:
BACKGROUND : <color>
BACKGROUND färbt den Diagrammhintergrund ein. Zulässig ist die Angabe von Hexadezimal-Farbcodes.
FrameColor
Syntax:
FRAMECOLOR : <color>
Via FRAMECOLOR wird der um den Diagrammbereich liegende Rahmen eingefärbt.
Size
Syntax:
SIZE : <width> <height>
Unter SIZE erfolgt die Angabe von Breite und Höhe des Diagrammbereichs in Punkten.
Use3D
Syntax:
USE3D : [YES | NO]
USE3D stellt Diagramme drei- (YES) bzw. zweidimensional (NO) dar.
Labels
Syntax:
LABELS : [0 | 1 | 2]
Mit LABELS wird eingestellt, welches Datenelement abgebildet wird:
0 = Tabellenwert
1 = Tabellenwert als Prozent
2 = Labelname
Rows und Columns
Syntax:
ROWS : [TOTALROW | <startrow>[: <endrow>]]
COLUMNS : [TOTALCOLUMN | <startcol>[: <endcol>]]
Im Default werden alle Zeilen und Spalten einer Datentabelle abgebildet. ROWS und COLUMNS benennen einen explizit darzustellenden Datenbereich. Die Definition der Datenreihen und -spalten muss in der Reihenfolge ihrer Position in der Tabelle erfolgen. Zudem können nur zusammenhängende Datenbereiche angesteuert werden, z.B. COLUMNS 1:3 für Spalte 1 bis 3. Eine Ansteuerung von Datenbereichen über Labelcodes ist nicht vorgesehen, ebenso wenig die Ansprache von Rahmenelementen (z.B. TOTALCOLUMN, TOTALROW).
Systembedingt gibt es beim Einsatz von OFFICECHART und OFFICECHARTDEFAULTS einige allgemeine Einschränkungen:
1.Tabellen, die um ein oder mehrere Diagramme ergänzt werden sollen, dürfen nur ein Zellelement enthalten.
2.Die Tabellen müssen so generiert werden, dass die Labels der Y-Achse einzeilig sind, d.h. alle Labeltexte und die dazugehörigen Daten müssen in direkt aufeinanderfolgenden Zeilen der Excel-Tabelle stehen.
3.Diagramme können nur in folgende Dateiformate exportiert werden: .xlsx, .ods
Auto
Sollen alle (oder viele) Tabellen eines Tabellenbandes um eine gleichartige Abbildung erweitert werden, ist die komfortabelste Lösung, einige allgemeine OFFICECHARTDEFAULTS-Parameter zu definieren und die AUTO-Option zu aktivieren.
Zugrunde liegt die folgende Tabelle (in einfacher oder mehrfacher Ausführung):
Dem Charting zugrunde liegende Tabelle
Es wird an jede vorhandene Tabelle ein Kreisdiagramm angefügt. Dieses soll dreidimensional abgebildet werden, einen hellgrauen Hintergrund, eine festgelegte Größe und eine rechtsstehende Legende erhalten. Es sollen die erste Spalte und alle fünf Zeilen dargestellt sowie das Diagramm mit ’Bewertung Total’ betitelt werden.
OFFICECHARTDEFAULTS =
| AUTO : YES
| CHARTTITLE : "Bewertung Total"
| INVERSE : NO
| LEGENDPOSITION : RIGHT
| FORM : PIE
| BACKGROUND : $EAEAEA
| SIZE : 500 400
| USE3D : YES
| LABELS : 0
| COLUMNS 1:1
| ROWS 1:5
;
Mit Auto-Option erzeugtes Kreisdiagramm
Individuelle Diagramme
Automatisch kann für jede Tabelle nur eine Abbildung erzeugt werden. Alternativ oder ergänzend können einzelnen Tabellen aber individuelle Diagramme hinzugefügt werden. Dies geschieht explizit mit dem OFFICECHART-Befehl.
Für die oben stehende Tabelle werden im Folgenden verschiedene Diagrammtypen und -einstellungen erstellt. Einmal begriffen, ist die Syntax selbsterklärend.
OFFICECHART =
| CHARTTITLE : "Bewertung der Konzepte"
| INVERSE : YES
| LEGENDPOSITION : BOTTOM
| FORM : COLUMNS
| OPTION : PERCENTSTACKED
| BACKGROUND : $FFFFFF
| SIZE : 500 400
| USE3D : NO
| LABELS : 0
| COLUMNS 2:6
| ROWS 1:5
;
Gestapeltes Säulendiagramm
OFFICECHART =
| CHARTTITLE : "Bewertungen"
| INVERSE : NO
| LEGENDPOSITION : TOP
| FORM : BARS
| OPTION : STACKED
| BACKGROUND : $EAEAEA
| SIZE : 500 400
| USE3D : NO
| LABELS : 1
| COLUMNS 2:6
| ROWS 1:5
;
Balkendiagramm
OFFICECHART =
| CHARTTITLE : "Konzepte"
| INVERSE : YES
| LEGENDPOSITION : RIGHT
| FORM : LINES
| BACKGROUND : $FFFFFF
| SIZE : 500 400
| USE3D : NO
| LABELS : 2
| COLUMNS 2:6
| ROWS 1:5
;
Liniendiagramm