5.3 저수준 그래프 함수

  • 고수준 그래픽 함수(일반적으로 plot() 함수)를 통해 호출한 그래픽 장치 위에 추가적인 그래프 요소(점, 선, 면, 문자, 범례 등)를 수동으로 추가
  • 그래프의 미학적 효과를 극대화 하기 위해, 최소한으로 그래픽 장치를 호출(공백, 크기, 레이아웃 축 정의) 후 저수준 그래픽 함수를 이용해 그래프 생성
  • 5.2.1plot() 함수에서 확인했던 다양한 그래픽 관련 인수(예: main, xlim, ylim, pch lty, col 등)들을 저수준 그래프 함수에서 사용 가능
  • 명시적으로 포함되지 않은(help() 통해 확인) 인수들은 ...로 표현되고, par() 함수 내 파라미터 값으로 전달

5.3.1 par()

  • 전체 그래픽 장치에 적용되는 여러가지 파라미터를 제어하며, 고수준 및 저수준 그래프의 모양 및 미학적 특성 설정
  • par() 함수를 통해 그래픽 파라미터 설정 및 조회 가능
         xlog          ylog           adj           ann           ask 
      "FALSE"       "FALSE"         "0.5"        "TRUE"       "FALSE" 
           bg           bty           cex      cex.axis       cex.lab 
"transparent"           "o"           "1"           "1"           "1" 
     cex.main       cex.sub 
        "1.2"           "1" 
[1] 5.1 4.1 4.1 2.1
  • par() 함수 조정 파라미터 리스트
Table 5.1:
Parameter 설명
din, fin, pin = c(width, height) 그래픽 장치(device), figure, plot 영역 크기(너비: width, 높이: height) 조정(인치 단위)
fig =c(left, right, bottom, top) 장치 내 figure 영역의 4개 좌표 조정을 통해 figure 위치 및 크기 조정
mai, mar = c(bottom, left, top, right) Figure 영역의 각 4개 마진의 크기 조정(인치 또는 현재 폰트 사이즈 기준 텍스트 길이 단위)
mfcol,mfrow = c(row, column) 그래프 화면 출력을 열 또는 행 기준으로 분할
mfg =c(rows, columns) mfcol 또는 mfrow로 분할된 그림에서 figure의 위치 조정
new =TRUE or =FALSE 현재 figure 영역을 새 그래프 장치로 인지(TRUE 이면 이미 출력된 그림 위에 새로운 고수준 그래프 함수가 생성) 여부
oma,omd,omi =c(bottom, left, top, right) Outer margin (여백) 각 영역별 크기 조정(인치 또는 설정 텍스트 크기 기준)
  • R 그래픽 레이아웃(그림 5.1 참조) 조정 파라미터
레이아웃 파라미터. AIMS-R-Users 에서 발췌레이아웃 파라미터. AIMS-R-Users 에서 발췌

Figure 5.4: 레이아웃 파라미터. AIMS-R-Users 에서 발췌

아래 par() 함수의 파라미터 값에 대한 도표 생성을 위한 R 스크립트는 Graphical parameters of R graphics package에서 참고 및 발췌

pin

현재 plot의 차원(너비와 높이) 조정

fin

Figure 영역의 차원(너비와 높이)

mar

  • c(bottom, left, top, left) 형태의 수치형 벡터를 값으로 갖음
  • plot 영역 밖의 여백(figure 영역)을 line 수로 지정(아래 그림 참고)
  • 디폴트 값은 c(5, 4, 4, 2) + 0.1
Figure 영역에서 기본 여백: Graphical parameters of R graphics package 에서 발췌

Figure 5.6: Figure 영역에서 기본 여백: Graphical parameters of R graphics package 에서 발췌

mfg

  • c(i, j) 형태의 숫자형 벡터의 값
  • mfcol 또는 mfrow 파라미터로 그림 배열이 정해진 상태에서 어떤 그림이 다음에 드려지는지를 지정
  • c(1,1)은 차원과 상관 없이 맨 처음 출력한 그래프가 생성

  • mfrowmfcol 유사함수: layout(), split.screen()

  • layout(): 행렬 객체를 인수로 받아 화면 분할

  • split.screen(): layout()과 유사하게 그래프의 화면을 분할하고 더 많은 기능을 제공
    • screen(): 분할된 화면 지정
    • erase.screen(): 지정된 화면의 그래프 삭제
[1] 1 2 3 4

oma

  • c(bottom, left, top, right) 형태의 숫자형 벡터 값 사용
  • Outer 여백의 크기 조정(텍스트 라인 기준)
  • 아래 예시는 oma = c(2, 3, 3, 1) 인 경우 여백 표시
Outer 여백 조정 파라미터(mar = c(2, 3, 3, 1)) Graphical parameters of R graphics package에서 발췌

Figure 5.7: Outer 여백 조정 파라미터(mar = c(2, 3, 3, 1)) Graphical parameters of R graphics package에서 발췌

5.3.4 ablines()

  • x-y 좌표에 직선을 그리는 함수로 lines() 함수와 유사하나 y 절편과 x 기울기, 또는 x 절편(y 축과 평행한 직선, (x, 0))과 y 절편(x축과 평행한 직선, (0, y))을 이용해 직선을 그릴 수 있음
    • a: y 절편
    • b: x 기울기
    • h: x축과 수평선(y 값)
    • v: x축과 수직선(y축과 수평선, x 값)
abline(), lines() 함수를 이용한 회귀직선 및 오차 거리 표시 예제

Figure 5.9: abline(), lines() 함수를 이용한 회귀직선 및 오차 거리 표시 예제

5.3.7 polygon()

  • x-y 좌표의 점을 연결해 폐 다각형을 만드는 함수
  • 좌표 지정 방법은 plot() 함수와 동일

  • 확률분포 아래 면적 표시
  • \(Z ~ \stackrel{i.i.d}{\sim} N(0, 1)\) 라고 할 때 \(P(-1.5 < Z < 0.7)\)에 해당하는 부분 표시
polygon()을 이용한 확률밀도함수 곡선 아래 면적 표시 예시

Figure 5.12: polygon()을 이용한 확률밀도함수 곡선 아래 면적 표시 예시

5.3.8 text(), mtext()

  • text(): x-y 좌표에 문자열을 입력하는 함수
text() 함수에서 adj 파라미터 값에 따른 텍스트 위치: AIMS-R-users 에서 발췌

Figure 5.13: text() 함수에서 adj 파라미터 값에 따른 텍스트 위치: AIMS-R-users 에서 발췌

text() 함수에서 pos 파라미터 값에 따른 텍스트 위치: AIMS-R-users 에서 발췌

Figure 5.14: text() 함수에서 pos 파라미터 값에 따른 텍스트 위치: AIMS-R-users 에서 발췌

text() 함수에서 srt 파라미터 값에 따른 텍스트 위치: AIMS-R-users 에서 발췌

Figure 5.15: text() 함수에서 srt 파라미터 값에 따른 텍스트 위치: AIMS-R-users 에서 발췌

  • mtext(): plot 여백 또는 outer 여백 상에 문자를 출력하는 함수

5.3.10 수식 표현

  • 그래프 상 수식은 expression(), bquote(), substitute() 함수로 표현 가능
  • TeX11과 유사한 수식 형태를 표현하기 위해 복잡한 표현식들이 사용됨 \(\rightarrow\) 아래 표 참고(demo(plotmath)를 통해 동일한 표 출력 가능)
R expression() 함수 내 수식 표현 방법R expression() 함수 내 수식 표현 방법R expression() 함수 내 수식 표현 방법R expression() 함수 내 수식 표현 방법R expression() 함수 내 수식 표현 방법

Figure 5.16: R expression() 함수 내 수식 표현 방법

Greek letters

R 그리스 문자 표현

Figure 5.17: R 그리스 문자 표현

  • expression(): 문자 TeX 형태와 유사한 기호 및 표현을 이용해 수식 표현
  • bquote(): .() 안에 있는 표현을 먼저 평가 한 후 그 값을 변환해 수식 표현식 안에 들어가는 값으로 사용 \(\rightarrow\) 그림 5.9, 그림 5.12 예시 및 스크립트 참고

두 함수 모두 paste() 함수와 같이 사용 하는 것이 일반적인 수식과 문자 표현 방법임.

R 그래픽 수식 표현 예시

Figure 5.18: R 그래픽 수식 표현 예시

5.3.11 R 기본 그래프 이미지 파일로 저장

5.1 절 R 기본 그래프 함수에서 언급한 그래픽 파일에 해당하는 함수로 그래픽 장치를 먼저 연 다음 그래프 생성 후 저장

pdf 
  2 

  1. 도널드 커누스가 만든 문서 조판 프로그램으로, 수학, 통계학, 물리학 등 자연과학 및 공학 분야에서 논문, 책자, 슬라이드 등 다양한 형태의 문서 작성을 위해 사용됨. 특히 수식 표현에 있어 다른 워드 프로세서와 비교할 수 없을 정도로 강력하며, 구조적 문서 작성을 강제함.