지터링(jittering)이란 자료의 점에 약간의 노이즈를 추가해서 흩어지게 표현하여 조정을 주는 방식을 의미한다.
데이터가 크거나 특정 위치에 점이 몰려있는 경우에는 점들이 중첩되기 때문에 밀도를 확인할 수 없고 정확한 자료 파악이 다소 어려울 수 있다. 따라서 지터링을 활용해서 점들이 겹치지 않고 흔들리게 표현하면 오히려 데이터 파악에 용이할 수 있다.
아래의 예를 보자.
library(scales) # alpha() 함수 사용을 위한 패키지. 지터링과 무관하다.
plot(universal.df$CCAvg, universal.df$Income,
col = alpha(ifelse(universal.df$Securities.Account == 0, "gray", "black"), 0.4),
pch = 20, log = 'xy',
xlab = "Income", ylab = "CCAvg")
위의 색의 진한 정도에 차이를 주었지만 지터링을 되어 있지 않은 그래프이다. 이 경우 겹쳐 있는 점들이 많이 발생했기 때문에 자료 파악이 어려울 수 있다.
plot(jitter(universal.df$CCAvg) ~ jitter(universal.df$Income),
col = alpha(ifelse(universal.df$Securities.Account == 0, "gray", "black"), 0.4),
pch = 20, log = 'xy', ylim = c(0.1, 10),
xlab = "Income", ylab = "CCAvg")
지터링을 사용할 경우 겹쳐져 있는 점들이 좀 더 흩뿌려져 있는 형태로 그려진다는 것을 볼 수 있다. 이처럼 데이터가 큰 경우에 지터링을 이용하면 좀 더 자료 파악에 도움이 될 수 있다.
기본 차트말고 ggplot으로도 다음과 같은 방식으로 작성할 수 있다.
library(ggplot2)
ggplot(universal.df) +
geom_jitter(aes(x = Income, y = CCAvg, colour = Securities.Account))
참고로 지터링의 경우에도 자료의 크기가 큰 경우 지터링을 적용한 점끼리도 겹쳐서 그려질 수 있다. 따라서 밀도 파악을 위한 다른 방법들을 적용해볼 수도 있을 것이다.
'[R] 연습' 카테고리의 다른 글
[R] 데이터프레임 관련 함수 및 코드 (0) | 2022.04.17 |
---|---|
R 기초 프로그래밍 (0) | 2022.04.15 |
[R] 시각화(ggplot 패키지편) (0) | 2022.01.23 |
[R] 시각화(graphics 패키지편) (0) | 2022.01.22 |
[R] 기초 문법 4 (0) | 2022.01.16 |