Veröffentlicht am :
Diagramm SASHELP

Extrem-MPG-Diagramm-Generierung

Dieser Code ist auch verfügbar auf: English Español Français
Der Code definiert zunächst ein `STATGRAPH` namens 'selections' mithilfe von `PROC TEMPLATE`. Diese Vorlage verwendet zwei dynamische Variablen, `upLimit` und `lowLimit`, um die Fahrzeuge zu filtern. Das Diagramm ist ein `Layout Lattice` mit zwei Zellen, die jeweils ein `scatterPlot` enthalten. Die erste Zelle zeigt Fahrzeuge mit einem Autobahn-MPG größer oder gleich `upLimit` an, während die zweite Fahrzeuge mit einem Autobahn-MPG kleiner oder gleich `lowLimit` anzeigt. Das Modell wird dann über `PROC SGRENDER` gerendert, wobei die Daten `sashelp.cars` verwendet und Werte für `upLimit` (44) und `lowLimit` (16) angegeben werden.
Datenanalyse

Type : SASHELP


Das Skript verwendet den internen Datensatz `sashelp.cars`, der standardmäßig in allen SAS-Installationen verfügbar ist, um Informationen über Fahrzeuge (Modell, UVP, Autobahn-MPG) abzurufen.

1 Codeblock
PROC TEMPLATE
Erklärung :
Dieser Block definiert eine wiederverwendbare Diagrammvorlage namens 'selections' mithilfe der `PROC TEMPLATE`-Prozedur. Er enthält dynamische Variablen `upLimit` und `lowLimit`, die zum Filtern der angezeigten Daten verwendet werden. Das Diagramm ist als Gitteranordnung (Layout Lattice) mit zwei Zeilen strukturiert, die jeweils ein Streudiagramm (`scatterPlot`) darstellen. Die erste Zeile visualisiert Fahrzeuge, deren Autobahnverbrauch größer oder gleich `upLimit` ist, während die zweite Fahrzeuge mit einem Verbrauch kleiner oder gleich `lowLimit` anzeigt. Die Datenpunktbeschriftungen zeigen das Fahrzeugmodell an.
Kopiert!
1PROC TEMPLATE;
2 define statgraph selections;
3 dynamic upLimit "low end of high mpg"
4 lowLimit "upper end of low mpg";
5 beginGraph / designHeight=600;
6 EntryTitle "Vehicles with Extreme Highway MPG (2004)";
7 layout lattice / rows=2 columnDataRange=union rowDataRange=union
8 rowGutter=10px;
9 columnAxes;
10 columnAxis / label="MSRP($)";
11 endColumnAxes;
12 
13 rowAxes;
14 rowAxis / label=eval(colLabel(mpg_highway));
15 rowAxis / label=eval(colLabel(mpg_highway));
16 endRowAxes;
17 cell;
18 cellHeader;
19 Entry "MPG " {unicode '2265'x} " " upLimit;
20 endCellHeader;
21 scatterPlot x=eval(ifn(mpg_highway >= upLimit, msrp, .))
22 y=eval(ifn(mpg_highway >= upLimit, mpg_highway, .)) /
23 group=make dataLabel=model dataLabelAttrs=(size=10);
24 endCell;
25 cell;
26 cellHeader;
27 Entry "MPG " {unicode '2264'x} " " lowLimit;
28 endCellHeader;
29 scatterPlot x=eval(ifn(mpg_highway <= lowLimit, msrp, .))
30 y=eval(ifn(mpg_highway <= lowLimit, mpg_highway, .)) /
31 group=make dataLabel=model dataLabelAttrs=(size=10);
32 endCell;
33 endLayout;
34 endGraph;
35 END;
36RUN;
2 Codeblock
PROC SGRENDER
Erklärung :
Dieser Block konfiguriert das ODS Graphics-System für die Diagrammausgabe, indem er die Parameter zurücksetzt und die Höhe festlegt. Anschließend wird `PROC SGRENDER` verwendet, um die zuvor definierte Diagrammvorlage 'selections' zu rendern. Es verwendet den Datensatz `sashelp.cars` als Quelle und weist den dynamischen Variablen der Vorlage spezifische Werte (44 für `upLimit` und 16 für `lowLimit`) zu. Dies erzeugt ein ODS-Diagramm, das Fahrzeuge mit außergewöhnlich hohem oder niedrigem Autobahnverbrauch hervorhebt.
Kopiert!
1ods graphics / reset height=600px labelMax=600;
2PROC SGRENDER template=selections DATA=sashelp.cars;
3 dynamic upLimit=44 lowLimit=16 ;
4RUN;
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.