표준 배포판의 일부인 graphics패키지를 중심으로 이번 챕터를 공부할 것이다.
그래픽스 함수들에 대한 설명
고수준과 저수준의 그래픽스 함수의 차이점을 이해할 필요가 있다. ‘고수준 함수’를 사용하면 새로운 그래프를 시작한다. (그래픽스 창을 초기 설정하고, 축적을 설정한다. 제목과 라벨 등, 장식을 넣을 수도 있다. 그 다음에 그래픽들을 그린다.
•
plot : 제네릭 그래프 함수
•
boxplot : 박스플롯을 생성
•
hist : 히스토그램을 생성
•
qqnorm : 분위수-분위수 그래프를 생성
•
curve : 함수를 그래프로 그린다.
반면에, ‘저수준 그래픽스 함수’로는 새로운 그래프를 시작할 수 없다. 존재하는 그래프에 점, 선, 텍스트, 장식 등을 더한다.
•
points : 점을 추가한다.
•
lines : 선을 추가한다.
•
abline : 직선을 추가한다.
•
segments : 선분을 추가한다.
•
polygon : 닫힌 다각형을 추가한다.
•
text : 텍스트를 추가한다.
저수준 그래픽스를 사용하기 전에 먼저 고수준 그래픽스를 호출해야 한다.
제네릭 그래프 함수
제네릭 함수는 인자의 자료형에 따라 처리과정이 달라지는 함수를 의미한다.
plot(x) 는 x가 벡터냐, 요인이냐, 데이터프레임이냐, 선형회귀 모형이냐, 도수분포표냐, 아니면 다른 것이냐에 따라 서로 다른 결과를 만들어낸다.
다른 패키지에 있는 그래픽스
lattice 패키지는 기존의 그래픽스에 대한 대안이다. 강력한 그래픽스 패러다임을 사용하는데, 대개 그 결과는 모양도 기존 것보다 더 예쁘다.
ggplot2 패키지는 또 다른 그래픽스 패러다임인 그래픽스 문법을 제공한다.
10.1 산점도 그리기
두 개의 상응하는 벡터들이 x, y에 들어있다면 plot(x,y) 이렇게 사용하고 데이터 프레임에 데이터가 두열에 들어있다면 plot(df) 이렇게 사용한다.
# 데이터프레임에 plot을 해주면 알아서 두 개의 열을 가지고 산점도를 그려준다.
plot(cars)
R
복사
두 개 이상의 열로 되어있는 경우 여러 개의 산점도가 만들어진다.
산점도가 만들어지려면 데이터가 수치형이어야 한다. plot이 다형 함수이기 때문에 인자들이 수치형이 아닌 경우 다른 그래프를 만들어 낼 것이다.
10.2 제목과 라벨 추가하기
그래프에 제목을 추가하거나 축에 라벨을 더하고 싶다.
•
main =”” : 제목추가
•
xlab= ”” : x축 라벨 추가
•
ylab = “” : y축 라벨 추가
######## 10.2 제목과 라벨 추가하기 #######
plot(cars,
main = "cars: Speed vs.Stopping Distance(1920)",
xlab = "Speed(MPH)",
ylab = 'Stopping Distance(ft)')
R
복사
10.3 격자 추가하기
plot을 호출할 때, type=”n” 을 넣으면 데이터를 표시하지 않으면서 그래픽스 프레임을 초기 설정하게 된다.
grid 함수를 호출해서 격자를 그린다.
points 나 lines 같은 저수준 그래픽스 함수를 호출해서 격자 위에 그래프를 덧그린다.
plot(x,y,type="n")
grid()
points(x,y) # 또는 lines(x,y)
R
복사
plot함수가 자동으로 격자를 그려주지는 않는다. 하지만 어떤 그래프들은 격자가 있으면 훨씬 도움이 된다.