재미있게도 저는 R에서 기본 그래픽 함수보다 ggplot2를 활용한 시각화를 먼저 배웠는데요, 요즘은 두 함수 모두 공부하다보니 각각의 강점이 있다는 생각이 듭니다. 😊
오늘은 기본 그래픽 함수의 1) 고수준 그래픽과 저수준 그래픽이 무엇인지 2) 그래픽 인자를 소개한 블로그 소개 3)직접 그려본 예시를 정리해보았습니다. 😎
1) 고수준 그래픽
plot()과 같이 그래픽 창을 새롭게 열어 그래프를 그릴 수 있게 해주는 함수
아래 그림처럼 그래프의 필수요소를 설정하는 것
2) 저수준 그래픽
열려있는 그래픽 창에 점, 화살표, 선과 같이 부수적인 요소를 추가
필수요소는 아니지만 그래프의 퀄리티를 향상시켜주는 역할
아래 그림에서 Length의 최솟값 이라는 텍스트와 화살표가 저수준 그래픽에 해당
이러한 고수준 및 저수준 그래픽을 활용한 함수의 인자는 이미 많은 블로그에 설명되어 있어 링크하였습니다.
iris
🌼 예제 데이터를 활용하였습니다.
plot()
, hist()
, boxplot()
, pairs()
등이 있습니다. 어떠한 인자도 추가하지 않고 데이터만 선택하여 그림을 그려 보았습니다.attach(iris)
# attach 함수는 R 메모리 내 데이터를 가장 위로 올려주는 역할을 합니다.
# 이렇게 되면 iris라는 데이터를 지정하지 않아고 변수명 만으로도 불러올 수 있습니다.
plot(x = Sepal.Length) # x와 y의 산점도
hist(x = Sepal.Length) # x의 히스토그램
boxplot(x = Sepal.Length) # x의 박스플랏
pairs(formula = Petal.Length ~ Sepal.Length + Sepal.Width + Petal.Width) # y와 여러 x간의 산점도
plot()
에서 여러 인자를 활용한 예시를 만들어 보았습니다.plot(x = Sepal.Length, # x값 지정
y = Sepal.Width, # y값 지정
type = "p", # plot의 타입 지정 : p는 points
pch = 21, # 점의 타입 지정 : 21은 빈 동그라미 형태
bg = "lightpink", # 점 배경 의 색상 지정
col = "black", # 점 선의 색상 지정
bty = "n", # 테두리 박스 형태 : n은 박스 형태 없음
main = "아이리스 꽃받침 길이 별 넓이", # 타이틀
xlab = "꽃받침 길이", # x축의 이름
ylab = "꽃받침 넓이", # y축의 이름
col.main = "black", # 타이틀 색상
col.lab = "dimgray", # x, y축 색상
col.axis = "dimgray", # 축 라벨 색상
las = 1) # 축 방향 : 1은 수평
arrows(x0 = 4.5, # 화살표 추가, x 시작점
y0 = 4.0, # y 시작점
x1 = 4.5, # x 끝점
y1 = 2.3, # y 끝점
length = 0.3, # 화살표의 길이(선 말고)
lty = 1, # 화살표 전체 선 모양
col = "dimgray") # 화살표
text(x = 4.5, # 텍스트 추가, x 시작점
y = 4.2, # y 시작점
labels = "최솟값") # 텍스트
legend(x = 7.3, # 범례 추가, x 시작점
y = 4.5, # y 시작점
legend = "point", # 범례 이름
pch = 21, # 범례 도형 형태
pt.bg = "lightpink", # 범례 도형 배경 색
col = "black", # 범례 박스 선 색
box.lty = 3) # 범례 박스 선 모양
rect(xleft = 5.5, # 도형 그리기, 사각형 x 시작점
xright = 6.5, # 사각형 x 끝점
ytop = 3.3, # 사각형 y 시작점
ybottom = 2.3, # 사각형 x 시작점
border = "blue", # 사각형 선 색
lwd = 1.5) # 사각형 선 넓이
이상으로 R 그래픽 생성의 기초적인 부분을 포스팅 해보았습니다. 🤹 이 것들을 for문과 if함수를 활용해서 특정 기준에 따라 선 모양이나 색상 같은 것들을 다르게 적용하면 더 좋겠지요? 🤓