Veröffentlicht am :
Berichterstattung CREATION_INTERNE

Illustration der OPTION POSITION in ANNOTATE mit GPLOT

Dieser Code ist auch verfügbar auf: English Español Français
Wartet auf Validierung
Das Skript geht in mehreren Schritten vor. Zuerst initialisiert es die globalen Grafikoptionen. Zweitens wird ein DATA STEP verwendet, um das Dataset 'Temp' zu erstellen, das Koordinaten (X, Y) und eine Variable 'P' enthält, die verschiedene Positionen darstellt. Drittens generiert ein weiterer DATA STEP das Annotations-Dataset 'myAnno' aus 'Temp', indem die notwendigen ANNOTATE-Funktionen (LABEL) definiert und die Variable 'P' verwendet wird, um die Position des Annotationstextes anzugeben. Schließlich wird PROC GPLOT ausgeführt, um ein Streudiagramm basierend auf 'Temp' anzuzeigen, wobei die Beschriftungen gemäß den Spezifikationen von 'myAnno' positioniert sind, wodurch die Auswirkung der Option POSITION visuell veranschaulicht wird.
Datenanalyse

Type : CREATION_INTERNE


Die beiden in diesem Skript verwendeten Datasets ('Temp' und 'myAnno') werden vollständig intern erstellt und generiert. 'Temp' wird über SAS-Schleifen und Berechnungen gefüllt, und 'myAnno' wird zu Annotationszwecken aus 'Temp' abgeleitet.

1 Codeblock
Systemparameter und Grafikoptionen
Erklärung :
Dieser Block konfiguriert den Pfad für Grafikdateien über eine FILENAME-Anweisung (zu beachten ist, dass der Windows-Pfad 'c:\...' möglicherweise an eine Linux/Viya-Umgebung angepasst werden muss). Anschließend initialisiert er die globalen Grafikoptionen, indem er die Parameter zurücksetzt, einen Rahmen aktiviert und die Grafikeinheiten in Prozent, die Texthöhe und die Schriftart festlegt.
Kopiert!
1FILENAME Fig "c:\JES\figures\Chapter_6\";
2GOPTIONS RESET=ALL BORDER GUNIT=PCT HTEXT=3 FTEXT='Arial';
3 
2 Codeblock
DATA STEP Data
Erklärung :
Dieser DATA STEP erstellt das Dataset 'Temp'. Er verwendet verschachtelte Schleifen, um Beobachtungen mit den Variablen X (von 1 bis 3) und Y (von 1 bis 5) zu generieren. Die Variable 'P' wird berechnet, als Zeichen formatiert, und 'IF'-Bedingungen wandeln sie für bestimmte numerische Werte in Buchstaben (A bis F) um. Jede Iteration erzeugt eine separate Beobachtung.
Kopiert!
1DATA Temp;
2 DO X= 1 TO 3;
3 DO Y = 1 TO 5;
4 P = PUT(X+((6-Y)-1)*3, $2.);
5 IF P="10" THEN P="A";
6 IF P="11" THEN P="B";
7 IF P="12" THEN P="C";
8 IF P="13" THEN P="D";
9 IF P="14" THEN P="E";
10 IF P="15" THEN P="F";
11 OUTPUT;
12 END;
13 END;
14RUN;
3 Codeblock
DATA STEP
Erklärung :
Dieser DATA STEP erstellt das Annotations-Dataset 'myAnno' basierend auf dem Dataset 'Temp'. Er weist den von SAS/GRAPH ANNOTATE benötigten Variablen spezifische Werte zu: FUNCTION (für Beschriftungen), XSYS und YSYS (für Koordinatensysteme), X und Y (Punktkoordinaten), POSITION (für Textausrichtung) und TEXT (der Inhalt der Beschriftung, abgeleitet von der Variablen 'P').
Kopiert!
1DATA myAnno; SET Temp;
2 FUNCTION='LABEL'; XSYS='2'; YSYS='2'; X=X; Y=Y;
3 POSITION=TRIM(LEFT(P)); TEXT='POS = '||TRIM(LEFT(P));
4RUN;
4 Codeblock
PROC GPLOT
Erklärung :
Dieser Block konfiguriert die visuellen Elemente des Diagramms: Typ, Größe und Farbe der Symbole (SYMBOL1), sowie das Fehlen von Beschriftungen und den Versatz für die Achsen (AXIS1, AXIS2). Ein Titel wird für das Diagramm definiert. Schließlich wird PROC GPLOT ausgeführt, um ein Streudiagramm von Y gegen X zu erstellen, wobei das Dataset 'Temp' verwendet wird. Die Option ANNOTATE=myAnno wird verwendet, um die zuvor definierten Annotationen zu überlagern, und die benutzerdefinierten Achsen werden angewendet.
Kopiert!
1SYMBOL1 VALUE=dot HEIGHT=3 COLOR=green;
2AXIS1 LABEL=NONE OFFSET=(10, 10);
3AXIS2 LABEL=NONE OFFSET=(20, 20);
4TITLE "Effect of the POSITION Variable in an ANNOTATE Data Set";
5PROC GPLOT DATA=Temp;
6 PLOT Y*X / NAME="F6_54_" ANNOTATE=myAnno HAXIS=AXIS2 VAXIS=AXIS1;
7RUN; QUIT;
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.