150 likes | 160 Views
제 3 장 SAS 를 이용하여 그래프 그리기. 자료를 그림으로 표현 - 자료의 성질 파악 Base SAS 와 SAS/STAT SAS/GRAPH 의 구성 절차 1. CHARTING 과 PLOTTING 에 관한 절차 - GCHART, GPLOT 2. 3 차원 그래프 그리기 위한 절차 - GCONTOUR, G3D, G3GRID 3. 그래프의 출력에 관한 절차 - GANNO, GPRINT, GREPLAY, GSLIDE. SAS/GRAPH 에서 유용하게 사용되는 명령문.
E N D
제 3장 SAS를 이용하여 그래프 그리기 • 자료를 그림으로 표현 - 자료의 성질 파악 • Base SAS와 SAS/STAT • SAS/GRAPH의 구성 절차 1. CHARTING과 PLOTTING에 관한 절차 - GCHART, GPLOT 2. 3차원 그래프 그리기 위한 절차 - GCONTOUR, G3D, G3GRID 3. 그래프의 출력에 관한 절차 - GANNO, GPRINT, GREPLAY, GSLIDE
SAS/GRAPH에서 유용하게 사용되는 명령문 • TEXT를 조절하기 위해 사용되는 명령문 TITLEn options ‘text’ ; FOOTNOTEn options ‘text’ ; NOTE options ‘text’ ; • 그래프의 출력형태를 지정하기 위해 사용되는 문장 AXISn options ; LEGENDn options ; PATTERNn options ; SYMBOLn options ; 지정된 options 중에서 특정한것 취소 할 때 : SYMBOL3 ; 또는 PATTERN ; 정의된 모든것을 지울 때 : GOPTION RESET=PATTERN ;
GCHART 절차의 이용 PROC GCHART options ; BLOCK variables … / options ; HBAR variables … / options ; PIE variables … / options ; STAR variables … / options ; VBAR variables … / options ; AXISn options ; BY variables ;
예제) /* HBAR.SAS : HORIZONTAL BAR CHART */ DATA HIGH ; SET SASUSER,HIGHWAY ; RUN ; GOPTION RESET= PATTERN ; GOPTION RESET = LEGEND ; LEGEND1 ACROSS=2 POSITION=(BOTTOM CENTER OUTSIDE) ; PROC GCHART ; HBAR STATUS / FREQ=COUNT GROUP=SEATBELT SUBGROUP=STEERING LEGEND=LEGEND1 ; TITLE1 “HORIZONTAL BAR CHART 1. “ ; PATTERN1 V=R2 C=BLACK ; PATTERN2 V=R3 C=RED ; RUN;
예제) /* VBAR.SAS : VERTICAL BAR CHART */ GOPTION RESET = PATTERN ; GOPTION RESET = LEGEND ; PROC GCHART ; VBAR=STATUS / FREQ=COUNT ; TITLE1 “Vertical Bar Chart with default” ; RUN ; GOPTION RESET = PATTERN ; GOPTION RESET = LEGEND ; LEGEND1 ACROSS=2 POSITION=(BOTTOM CENTER OUTSIDE) ; PROC GCHART ; VBAR STATUS / FREQ=COUNT TYPE =PERCENT GROUP=SEATBEALT SPACE=3 RAXIS=0 TO 70 BY 10 MINOR=1 ; TITLE1 “Vertical Bar Chart 2” ; PATTERN V=L1 C=RED ; RUN ;
예제) /* PIE.SAS : PIE CHART */ GOPTION RESET = PATTERN ; GOPTION RESET = LEGEND ; GOPTION RESET = TITLE ; TITLE1 “PIE CHART” ; PROC GCHART ; PIE STATUS / FREQ=COUNT EXPLODE=“serious” SLICE=ARROW VALUE=NONE PERCENT=INSIDE ; RUN ;
GPLOT 절차의 이용 • GPLOT 절차 PROC GPLOT options ; BUBBLE yvariable*xvariable=zvariable / options ; BUBBLE2 yvariable*xvariable=zvariable / options ; PLOT yvariable*xvariable ... / options PLOT2 yvariable*xvariable ... / options BY variables ; SYMBOLn options ; PATTERNn options ; TITLEn options ‘text’ ; FOOTNOTEn options ‘text’ ; NOTE options ‘text’ ; AXIS options ; LEGENDn options ;
예제) 산점도를 그리기 위한 프로그램 /* GPLOT.SAS : GPLOT PROCEDURE */ DATA ECONOMY ; SET SASHELP.GNP ; RUN ; GOPTION RESET=SYMBOL ; GOPTION RESET=AXIS ; TITLE “GPLOT with default” ; PROC GPLOT DATA=ECONOMY ; PLOT INVEST*GNP ; RUN ;
예제) GPLOT 절차의 옵션을 설명하기 위한 프로그램 /* GPLOT2.SAS : GPLOT PROCEDURE WITH OPTION */ GOPTION RESET=SYMBOL ; GOPTION RESET=AXIS ; TITLE “GPLOT” ; SYMBOL1 C=GREEN I=JOIN V=DOT H=0.2 ; SYMBOL2 C1=BLUE CV=BLACK I=SPLINE V=STAR H=0.5 ; SYMBOL3 C=RED I=JOIN V=NONE ; AXIS1 C=GREEN MAJOR=(C=BLACK W=2 H=1) MINOR=(C=RED W=1 H=0.5 N=1) LABEL=(C=BLACK A=-90 R=90 “GNP & CONSUMP”) W=2 ; AXIS2 C=RED MAJOR=(C=BLACK W=2 H=1) MINOR=(C=GREEN W=1 H=0.5 N=1) LABEL=(C=BLACK A=-90 R=90 “INVEST”) W=1 ; AXIS3 C=RED ; LEGEND1 ACROSS=2 POSITION=(TO LEFT INSIDE) VALUE=(‘GNP’ ‘CONSUMP’) ; PROC GPLOT DATA=ECONOMY ; PLOT GNP*DATE=1 CONSUMP*DATE=2 / OVERAY VAXIS=AXIS1 HAXIS=AXIS3 LEGEND=LEGEND1 ; PLOT2 INVEST*DATE=3 / VAXIS=AXIS2 ; RUN ;
3차원 그래프 그리기 • G3GRID 절차의 이용 PROC G3GRID options ; GRID variable1*variable2=variable3 …. / options ; BY variables ; • G3D 절차의 이용 PROC G3D options ; PLOT yvariable*xvariable=zvariable / options ; SCATTER | SCAT yvariable*xvariable=zvariable / options ; TITLEn options ‘text’ ; FOOTNOTEn options ‘text’ ; NOTE options ‘text’ ; BY variables ;
예제) 3차원 그래프를 그리기 위한 프로그램 /* G3D.SAS : G3D PROCEDURE */ TITLE1 ‘G3D PLOTING’ ; DATA GNP ; SET SASHELP.GNP ; LABEL DATE=“DATE” EXPORTS=“EXPORTS” GNP=“GNP” ; RUN ; PROC G3D DATA=GNP ; SCATTER DATA*EXPORTS=GNP ; RUN ;
GCONTOUR 절차의 이용 • GCONTOUR 절차 PROC CONTOUR options ; PLOT request / options ; BY variables ; PATTERNn options ; TITLEn options ; FOOTNOTEn options ; NOTEn options ;
예제) 등고선을 그리기 위한 프로그램 /* GCONTOUR.SAS : GCONTOUR PROCEDURE */ DATA CONTOURS ; FORMAT Z 5.1 ; DO X=0 TO 400 BY 5 ; DO Y=0 TO 350 BY 10 ; Z=46.2+0.09*X-0.0005*X**2+0.1*Y-0.0005*Y**2+0.0004*X*Y ; OUTPUT ; END ; END ; RUN ; PROC GCONTOUR ; PLOT X*Y=Z ; TITLE “CONTOUR PLOT X VS Y’ ; TITLE2 ‘CONTOURS ARE Z’ ; RUN ;
그래프의 저장 및GREPLAY 절차의 이용 • 카탈로그에 저장 PROC GPLOT GOUT=STAT.GRAPH ; PLOT Y*X / NAME=‘TEMP’ ; RUN ; • 외부파일로 출력 1. FILE -> EXPORT 이용 저장 BMP 또는 GIF 2. FILE -> SAVE AS -> IMAGE FILE 이용 저장 BMP 또는 GIF • GREPALY 절차 카탈로그를 수정, 카탈로그에 저장된 그래프들 중에서 선택을 하여 여러 개의 그래프를 동시에 출력 PROC GREPLAY options ;
FULL-SCREEN 모드의 사용법 PGM 윈도우에서 PROC GREPLAY ; 를 수행하면 PROC GREPLAY 윈도우가 나타난다. 이 윈도우상에서 IGOUT에 그래프들이 저장되어 있는 카탈로그의 이름을 입력하면 저장되어 있는 그래프의 목록이 나타난다. 선택항목인 SEL에서 출력순서에 따라 1, 2, 3등돠 같이 선택한다 -> 그래프의 위치선정 • LINE 모드의 사용법 PROC GREPLAY IGOUT=GRAPH GOUT=SAMPLE TC=SASHELP.TEMPLT TEMPLATE=L1R2 ; TREPLAY 1:2 2:3 3:1 ; RUN ;