Das Skript beginnt mit der Definition numerischer Daten 'x', 'y1' und 'y2' über Datalines. Anschließend berechnet es die Summe 'x_total' und die Prozentsätze 'y1_pct' und 'y2_pct' für jede Zeile, die als untere und obere Grenzen für die Diagrammbänder dienen. Die Ausgabe wird in eine HTML-Datei umgeleitet und ein PNG-Bild wird generiert. PROC SGPLOT wird mit zwei BAND-Deklarationen verwendet, um das gestapelte Flächendiagramm zu erstellen, wobei die X- und Y-Achsen so konfiguriert sind, dass sie spezifische Werte und Beschriftungen anzeigen, um eine klare Visualisierung der Proportionen zu gewährleisten.
Datenanalyse
Type : INTERNE_ERSTELLUNG
Die Daten 'my_data' werden direkt im Skript mithilfe der DATALINES-Klausel erstellt. Sie stammen nicht aus einer externen Quelle oder einer Standard-SAS-Bibliothek wie SASHELP.
1 Codeblock
MACRO VAR
Erklärung : Definiert eine Makrovariable `name`, die zur Benennung der HTML-Ausgabedatei und des Bildes verwendet wird.
Kopiert!
%let name=area3;
1
%let name=area3;
2 Codeblock
FILEREF
Erklärung : Weist die Dateireferenz `odsout` dem aktuellen Arbeitsverzeichnis zu, in dem die ODS-Dateien gespeichert werden.
Kopiert!
filename odsout '. ';
1
filename odsout '. ';
3 Codeblock
DATA STEP Data
Erklärung : Erstellt den Datensatz `my_data` mit den Variablen `x`, `y1`, `y2`. Eine neue Variable `x_total` wird als Summe von `y1` und `y2` berechnet. Die Daten werden direkt im Skript über `datalines` bereitgestellt.
Erklärung : Modifiziert den bestehenden Datensatz `my_data` durch Berechnung der für das gestapelte Flächendiagramm erforderlichen Prozentvariablen. `y1_pct` und `y2_pct` repräsentieren die relativen Anteile von `y1` und `y2`, und `base1_pct` und `base2_pct` definieren die Startpunkte für die Diagrammbänder.
Kopiert!
data my_data; set my_data;
base1_pct=0; y1_pct=y1/x_total;
base2_pct=y1_pct; y2_pct=y1_pct+(y2/x_total);
run;
1
DATA my_data; SET my_data;
2
base1_pct=0; y1_pct=y1/x_total;
3
base2_pct=y1_pct; y2_pct=y1_pct+(y2/x_total);
4
RUN;
5 Codeblock
ODS
Erklärung : Schließt das Standard-ODS-LISTING-Ziel und öffnet ein ODS-HTML-Ziel. Die ausgegebene HTML-Datei wird dynamisch mit der Makrovariablen `&name` benannt und enthält einen spezifischen Titel und den Stil `htmlblue`.
Kopiert!
ODS LISTING CLOSE;
ODS HTML path=odsout body="&name..htm"
(title="SGplot 100% Stacked Area Plot")
style=htmlblue;
1
ODS LISTING CLOSE;
2
ODS HTML path=odsout body="&name..htm"
3
(title="SGplot 100% Stacked Area Plot")
4
style=htmlblue;
6 Codeblock
ODS GRAPHICS
Erklärung : Konfiguriert die Optionen für die ODS-Grafikausgabe. Legt das PNG-Format für das Bild fest, benennt die Bilddatei und definiert Breite, Höhe sowie das Fehlen eines Rahmens.
Erklärung : Definiert den Haupttitel des Diagramms unter Angabe von Farbe, Zeilenabstand und Schriftgröße.
Kopiert!
title1 color=gray33 ls=0.0 h=23pt "100% Stacked Area Plot";
1
title1 color=gray33 ls=0.0 h=23pt "100% Stacked Area Plot";
2
8 Codeblock
PROC SGPLOT
Erklärung : Generiert das gestapelte Flächendiagramm mithilfe von PROC SGPLOT. Es verwendet `my_data` und deaktiviert die automatische Legende. Zwei `BAND`-Deklarationen werden verwendet, um die gestapelten Bereiche zu erstellen, basierend auf den berechneten Prozentvariablen. Die Y- und X-Achsen werden mit Wertebereichen, Beschriftungen, Schriftattributen und Rastern angepasst.
Kopiert!
proc sgplot data=my_data noautolegend;
styleattrs datacolors=(cx993366 cx9999ff);
band x=x lower=base1_pct upper=y1_pct;
band x=x lower=base2_pct upper=y2_pct;
yaxis
values=(0 to 1 by .2) label='Y Axis'
labelattrs=(size=16pt weight=bold color=gray33)
valueattrs=(size=16pt weight=bold color=gray33)
offsetmin=0 offsetmax=0 grid;
xaxis
values=(0 to 5 by 1) label='X Axis'
labelattrs=(size=16pt weight=bold color=gray33)
valueattrs=(size=16pt weight=bold color=gray33)
offsetmin=0 offsetmax=0 grid;
run;
quit;
1
PROC SGPLOTDATA=my_data noautolegend;
2
styleattrs datacolors=(cx993366 cx9999ff);
3
band x=x lower=base1_pct upper=y1_pct;
4
band x=x lower=base2_pct upper=y2_pct;
5
yaxis
6
values=(0 to 1BY .2) label='Y Axis'
7
labelattrs=(size=16pt weight=bold color=gray33)
8
valueattrs=(size=16pt weight=bold color=gray33)
9
offsetmin=0 offsetmax=0 grid;
10
xaxis
11
values=(0 to 5BY1) label='X Axis'
12
labelattrs=(size=16pt weight=bold color=gray33)
13
valueattrs=(size=16pt weight=bold color=gray33)
14
offsetmin=0 offsetmax=0 grid;
15
RUN;
16
17
QUIT;
9 Codeblock
ODS
Erklärung : Schließt das zuvor geöffnete ODS-HTML-Ziel und reaktiviert das Standard-ODS-LISTING-Ziel.
Kopiert!
ODS HTML CLOSE;
ODS LISTING;
1
ODS HTML CLOSE;
2
ODS 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.
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.