[R] 그래프 그리기(plot함수)
- R
- 2022. 5. 26.
R에서의 plot 함수 사용법입니다.
plot 함수를 이용해 산점도와 꺽은 선 그래프를 그릴 수 있습니다.
기본 문법은 다음과 같습니다.
plot(y축 데이터,kwag**)
plot(x축 데이터,y축 데이터,kwag**)
위 방식은 데카르트 방식이라고 부릅니다. x,y 데이터를
(x,y)좌표로써 인지하고 그에 맞게 점을 찍는 방식입니다.
x,y 매칭은 값 순서대로 합니다.
plot에 넣은 데이터가 하나(x or y)라면 자연스럽게 y축 데이터를 기준으로 넘어가고 x축에는 인덱스로 설정됩니다.
# x만 plot에 넣은 경우
x = c(1,2,3)
plot(x)
# x,y을 plot에 넣은 경우
x = c(1,2,3)
y = c(4,5,6)
plot(x,y)
축 관련 옵션
plot()함수 내에서 제목이나 축 옵션을 변경할 수 있습니다.
파라미터 | 설명 |
main | 그래프 제목 설정 |
sub | 서브 제목 |
xlab='문자',ylab='문자' | x,y축에 제목 설정(하나의 데이터만 입력시 ylab으로 설정) |
ann=F | x,y 축 제목을 없앰 |
axes=F | 축제거 |
xlim,ylim | 각 축의 범위 변경 |
몇가지를 살펴보겠습니다.
먼저 x만 입력시 xlab을 했을 때 x축에 있는 Index가 A로 바뀌는 것을 볼 수 있습니다.
plot(x,xlab='A',main='Test')
그렇기 때문에 하나의 데이터만 넣을시에는 ylab으로 바꿔주어야 합니다.
plot(x,ylab='A',main='Test')
ann=F을 넣으면 x,y 축 이름이 없어집니다.
plot(x,ann=F)
축 자체를 없애려면 axes=F를 합니다.
점만 나오게 하는 방법이나 잘 쓰이진 않습니다.
plot(x,ann=F,axes=F)
그래프 타입 지정
그래프 타입이라고 해봤자 점과 선을 벗어나진 않습니다.
둘의 조합으로 다양한 시각화를 할 수 있습니다.
파라미터 | 설명 |
type='p' | 산점도(디폴트) |
type = 'l' | 꺾은선 그래프 |
type='b' | 점과 선 모양 그래프(중첩x) |
type='c' | type='b'에서 점을 뺀 그래프 |
type='o' | 점과 선 모양 그래프(중첩o) |
type='h' | 수직선 그래프 |
type='s' | 누적함수(왼쪽 기준) |
type='S' | 누적함수(오른쪽 기준) |
type='n' | 축만 그리기 |
몇가지만 살펴보겠습니다.
plot(x,y,type='b')
plot(x,y,type='h')
plot(x,y,xlim=c(1,4),type='S')
plot(x,y,type='n')
꾸미기 옵션(점,선,색,모양)
선모양
먼저 선모양을 보면 다음과 같습니다. lty=0~6까지로 총 7개의 선모양이 있습니다. 0번은 투명선이라서 사실상 6가지 선모양입니다.
파라미터 | 설명 |
lty=0 , lty='blank' | 투명선(선없음) |
lty=1 , lty='solid' | 실선 |
lty=2 , lty='dashed' | 대쉬선 |
lty=3 , lty='dotted' | 점선 |
lty=4 , lty='dotdash' | 점선과 대쉬선 |
lty=5 , lty='longdash' | 긴 대쉬선 |
lty=6, lty='twodash' | 두개의 대쉬선 |
그래프 타입이 선이 있게 설정하고서 lty를 입력해야 적용이 됩니다.
점만 있는 그래프인 경우 반영되지 않습니다.
plot(x,type='l',lty=2)
색,굵기, 모양
색상은 col 로 통일되어서 적용됩니다.
점의 색이나 선의 색이나 col 명령이면 다 가능합니다.
파라미터 | 설명 |
col=1, col='색상' | 번호별 색, 1-검정, 2-빨강,3-초록,4-파랑,5-연파랑(ligthblue),6-보라,7-노랑,8-회색 |
lwd=1 | 선의 굵기 지정 |
cex= 1 | 점,기호의 굵기 지정 |
pch=0,pch='모양' | 점의 모양을 지정, 0-네모, 1-동그라미,2-세모,3- +,4-X,5-다이아모드, 6 - 아래로 뒤집어진 세모, 7-네모안에 X, 8-별, 9-다이아몬드 안에 X, 10-동그라미 안에 X, 11-다윗별, 12- 네모안에 +, ...15 - 색칠된 네모,...,20- 네모,...,25 - 아래로 뒤집어진 세모. 끝 |
점모양은 종류가 많아보이지만 사실상 0~8까지의 기본 모양과 9~4까지의 기본모양을 조합한 모양, 15~19 색칠된 기본모양(색칠이 가능한 경우만), 20~25는 다시 기본모양이 나옵니다.
물론 직접 모양을 써서 점모양을 표현할 수 있긴 합니다.
그런데 9번이후에 있는 조합된 모양은 무슨 모양으로 써야할지 굉장히 난감하기 때문에 잘 쓰는 모양의 번호를 기억해두었다가 사용하는게 좋을 것 같습니다.
plot(x,type='l',col='lightblue',lwd=9)
plot(x,pch=12,cex=2)
마치며
plot을 이용한 산포도와 꺾은선 그래프를 그리는 방법에 대해 다루어보았습니다. 너무 간단한 벡터를 표현해서 감흥이 약간 없긴 하지만 명령에 대한 거의 모든 것을 다 담았기 때문에 유용하게 쓰지 않을까 싶습니다.
plot으로 하면 멋있는 그래프가 나오진 않습니다. 그냥 간단하고 빠르게 시각화 하는데에 의의를 두는게 좋아보입니다.
'R' 카테고리의 다른 글
[R] 데이터프레임 행,열 이름 가져오기 (0) | 2022.06.05 |
---|---|
[R] 히스토그램(hist) 그리기 (0) | 2022.05.31 |
[R] tidyverse 간단소개 및 설치 (0) | 2022.05.21 |
[R] 반복문(for,while,repeat) (0) | 2022.05.19 |
[R] 조건문 만들기(if, ifelse,switch) (0) | 2022.05.18 |