본문 바로가기
프로그래밍/SAS

003. [proc sgplot] SAS sgplot 여러가지 옵션 (1)

by life_is_egg 2021. 8. 20.
반응형

 목차 

1. 제목, x축, y축 라벨링

2. 글씨 크기 조절

3. Box plot의 box 넓이 조절

4. 그래프 크기 조절


1. 제목, x축, y축 라벨링 (Title & legend & xaxis & yaxis labelling)

 

sas를 이용하여 여러 그래프들을 그리다 보면 제목이나 축 이름을 새로 지정해주고 바꿔줘야 한다.

sgplot에는 많은 옵션들이 있지만 그중 몇 가지만 알아보도록 할 것이다.

그 외 다른 옵션들은 sas 홈페이지에서 찾을 수 있다.

 

plot을 그리기 전 먼저 데이터를 불러온다.

Kaggle에서 받은 데이터를 활용했다.

vgsales_300rank.csv
0.02MB


불러온 데이터셋

sgplot으로 box plot을 그리는 코드는 다음과 같다.

proc sgplot data=plot;
   vbox year/ category=genre;
run; 

vbox에는 연속형 변수(continuous value)를 적고, category에는 범주형 변수(category value)를 적으면 된다.


그래프에 제목, x축, y축을 입력하고 싶다면 아래의 코드에서 3~5행을 추가하면 된다.

Title " 제목 "

Xaxis label = " x축 라벨링"

Yaxis label = "y축 라벨링"

proc sgplot data=plot;
   vbox year/ category=genre;
   TITLE "Genre & Year";
   XAXIS label="Game genre";
   YAXIS label="Release year";
run; 

[왼쪽] 수정 전 > [오른쪽] 수정 후

 


2. 글씨 크기 조절

글씨가 너무 작거나 큰 경우 코드 몇 가지만 추가해서 변경할 수 있다.

라벨링 한 코드 뒤에 labelattrs valueattrs를 적으면 된다. 폰트 사이즈와 크기 등을 조절할 수 있다.

 

labelattrs : x, y축 명

valuattrs : legend(범례)

proc sgplot data=plot;
   vbox year/ category=genre;
   TITLE "Genre & Year";
   XAXIS label='Game genre' labelattrs=(size=13pt weight=bold) valueattrs=(size=11pt weight=bold);
   YAXIS label="Release year" labelattrs=(size=13pt weight=bold) valueattrs=(size=11pt weight=bold);
run; 

 

 

수정된 그래프의 경우 글씨 크기가 더 커지고 굵어진 것을 알 수 있다.

[왼쪽] 수정 전 > [오른쪽] 수정 후


3. Box plot의 box 넓이 조절

SAS로 박스 플랏을 그리면 생각보다 너무 넓게 나오거나 좁게 나오는 경우가 있다.

이때 박스 넓이를 조절하는 방법은 boxwidth를 사용하면 된다.

proc sgplot data=plot;
   vbox year/ category=genre boxwidth=0.8;
   TITLE "Genre & Year";
   XAXIS label='Game genre' labelattrs=(size=13pt weight=bold) valueattrs=(size=11pt weight=bold);
   YAXIS label="Release year" labelattrs=(size=13pt weight=bold) valueattrs=(size=11pt weight=bold);
run; 

 

 

아래 왼쪽 그래프는 기본 넓이가 0.4로 설정되어 있었지만, 0.8로 늘림으로써 넓어진 것을 알 수 있다.

[왼쪽] 수정 전 > [오른쪽] 수정 후


4. 그래프 크기 조절

박스 플랏에서 보기 좋게 박스 넓이도 넓히고 글씨 크기도 키웠지만 그에 비해 그래프가 너무 좁은 것 같은 느낌이 든다.

ODS를 사용하여 그래프 크기를 조절할 수 있다. width, height로 넓이와 높이를 조정한다.

박스플랏 외 다른 그래프를 그릴 때도 사용할 수 있는 코드이다.

ods graphics on / width=8in height=5in;
proc sgplot data=plot;
   vbox year/ category=genre boxwidth=0.8;
   TITLE "Genre & Year";
   XAXIS label='Game genre' labelattrs=(size=13pt weight=bold) valueattrs=(size=11pt weight=bold);
   YAXIS label="Release year" labelattrs=(size=13pt weight=bold) valueattrs=(size=11pt weight=bold);
run; 

 

ods graphics off 코드를 돌리면 다시 원래 크기의 그래프로 돌아온다.

 

- 최종 결과물 -

[왼쪽] 수정 전 > [오른쪽] 수정 후

 

반응형

댓글