Veröffentlicht am :
Berichterstattung CREATION_INTERNE

Horizontal gruppiertes Balkendiagramm

Dieser Code ist auch verfügbar auf: English Español Français
Wartet auf Validierung
Das Skript verwendet einen DATA-Schritt, um ein Dataset `my_data` mit Kategorien, Serien und Beträgen zu erstellen. Anschließend wird ODS so konfiguriert, dass eine HTML-Ausgabe und eine PNG-Bilddatei erzeugt werden. Die SGPLOT-Prozedur wird verwendet, um ein horizontal gruppiertes Balkendiagramm (hbar) zu erstellen, das die Summe der Beträge für verschiedene Serien innerhalb jeder Kategorie visualisiert. Stiloptionen und benutzerdefinierte Titel werden auf das Diagramm angewendet, und die Achsen werden zur besseren Lesbarkeit formatiert. Schließlich werden die ODS-Ziele geschlossen.
Datenanalyse

Type : CREATION_INTERNE


Das Dataset `my_data` wird direkt im Skript mit einem DATA-Schritt und einer DATALINES-Anweisung erstellt, die Daten für die Kategorien A und B mit ihren jeweiligen Beträgen bereitstellt.

1 Codeblock
MACRO VAR
Erklärung :
Definiert eine Makrovariable `name`, die zur Benennung der HTML-Ausgabedatei und des PNG-Bildes verwendet wird.
Kopiert!
1%let name=bar1;
2 Codeblock
FILENAME
Erklärung :
Weist den Fileref `odsout` dem aktuellen Arbeitsverzeichnis zu, was angibt, wo die ODS-Ausgabedateien gespeichert werden.
Kopiert!
1filename odsout '.';
3 Codeblock
DATA STEP Data
Erklärung :
Erstellt das Dataset `my_data`, das Informationen zu `CATEGORY`, `SERIES` (Zeichen) und `AMOUNT` (numerisch) enthält. Die Daten werden über eine integrierte `datalines`-Anweisung bereitgestellt.
Kopiert!
1DATA my_data;
2INPUT CATEGORY SERIES $ 3-11 AMOUNT;
3DATALINES;
41 Series A 5
52 Series A 7.8
61 Series B 9.5
72 Series B 5.9
8;
9RUN;
4 Codeblock
ODS
Erklärung :
Schließt das Standard-ODS-LISTING-Ziel und öffnet das ODS-HTML-Ziel, wobei der Ausgabepfad, der HTML-Dateiname (`bar1.htm`), ein Titel für das HTML-Dokument und der Stil `htmlblue` angegeben werden. Die `ods graphics`-Optionen werden so eingestellt, dass ein PNG-Bild von 800x600px ohne Rahmen und mit einer Image Map generiert wird.
Kopiert!
1ODS LISTING CLOSE;
2ODS HTML path=odsout body="&name..htm"
3 (title="SGplot Horizontal Grouped Bar")
4 style=htmlblue;
5 
6ods graphics / imagefmt=png imagename="&name"
7 width=800px height=600px noborder imagemap;
5 Codeblock
PROC SGPLOT
Erklärung :
Definiert die Haupt- und Untertitel des Diagramms mit Optionen für Farbe, Abstand und Höhe. `PROC SGPLOT` wird verwendet, um ein horizontal gruppiertes Balkendiagramm (`hbar`) zu erstellen. Die Daten stammen aus `my_data`. Die Balken sind nach `series` gruppiert und zeigen die Summe von `amount` für jede `category` an. Stilattribute werden auf die Balken und Achsen angewendet, um eine bessere visuelle Darstellung zu erzielen.
Kopiert!
1title1 color=gray33 ls=0.5 h=23pt "Horizontal Grouped Bar";
2title2 color=gray33 ls=0.5 h=17pt "Compares values across categories";
3 
4PROC SGPLOT DATA=my_data noautolegend;
5styleattrs datacolors=(cx9999ff cx993366);
6hbar category / response=amount stat=sum
7 group=series groupdisplay=cluster grouporder=descending
8 outlineattrs=(color=black) nostatlabel;
9xaxis
10 values=(0 to 10 BY 2)
11 labelattrs=(size=16pt weight=bold color=gray33)
12 valueattrs=(size=16pt weight=bold color=gray33)
13 offsetmax=0 grid minor minorcount=1;
14yaxis
15 labelattrs=(size=16pt weight=bold color=gray33)
16 valueattrs=(size=16pt weight=bold color=gray33)
17 display=(noticks);
18RUN;
19 
20QUIT;
6 Codeblock
ODS
Erklärung :
Schließt das ODS-HTML-Ziel und reaktiviert das ODS-LISTING-Ziel, wodurch der Berichtserstellungsprozess abgeschlossen wird.
Kopiert!
1ODS HTML CLOSE;
2ODS LISTING;
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.