Charts im PDF-Format - neue Möglichkeiten mit ODS unter SAS9

SAS9 bietet eine recht nützliche neue Möglichkeit, mit ODS in PDF-Dateien verschiedene Elemente (Grafiken, Text und Tabellen) auf einer Seite zu platzieren. Ich habe die neuen Anweisungen ODS LAYOUT und ODS REGION hier verwendet, um mehrere Charts im PDF-Format auf einer Seite anzuordnen. Dieses Feature ist bisher noch experimentell. In verschiedenen SUGI-Papers wird darüber berichtet, und diese Anweisungen werden sicher noch viel mehr können als von mir hier verwendet. Es scheint möglich zu werden, sehr individuelle Layouts zu erzeugen.

In meinem Artikel führe ich Literatur von SAS zu diesem Thema auf und zeige einen Beispielreport und das zugehörige kommentierte Programm.

T. Schellenberger von SAS schreibt zu diesem Thema in seinem SUGI-Artikel:
„Ein neues experimentelles Feature für Version 9 (…) ist die ODS LAYOUT Anweisung. Mit diesem Feature können Sie einfach Grafiken, Text und Tabellen auf derselben Seite mischen und sie an jeder beliebigen Position platzieren. Es ist ein wenig wie PROC GREPLAY, aber nicht mehr nur für Grafiken. Komplexe Berichte und sogar Formulare, die man bisher mit ODS kaum hinbekommen hat, können jetzt einfach erzeugt werden. Wenn Sie Ihre Daten in einem sehr speziellen Format anzeigen wollen, mit verschiedenen Teilen des Reports an unterschiedlichen Stellen der Seite, dann haben wir jetzt endlich eine Lösung für Sie.“

Hier ein Ausschnitt aus dem Beispielprogramm, es werden vier Charts untereinander auf einer Seite im Hochformat erstellt (%chart ist das Makro, das jeden Chart erzeugt):

ODS LAYOUT START;
ODS REGION X=0pct Y= 0pct HEIGHT=25pct WIDTH=100pct;
%chart(Juni 2005);
ODS REGION X=0pct Y=25pct HEIGHT=25pct WIDTH=100pct;
%chart(Juli 2005);
ODS REGION X=0pct Y=50pct HEIGHT=25pct WIDTH=100pct;
%chart(August 2005);
ODS REGION X=0pct Y=75pct HEIGHT=25pct WIDTH=100pct;
%chart(September 2005);
ODS LAYOUT END;

Fehler bei der Ausführung

Habe das Programm auf einen Bestand laufen lassen. Bekam dann folgende Meldung...

ERROR: Absolute layout is supported only for ODS PRINTER. Non-COLUMN/ROW LAYOUT requests will be ignored for other destinations.

Ohne den Passus....

ODS LAYOUT START; /*4*/
ODS REGION X=0pct Y=0pct HEIGHT=25pct WIDTH=100pct;

läuft es. Sieht aber nicth so schön aus.