순차적·발산형·범주형 완벽 가이드
데이터 시각화를 하다 보면, “어떤 색상을 써야 더 잘 보일까?”라는 고민에 빠지곤 하죠. 특히 R을 사용하시는 분이라면 이 고민이 더욱 실감 날 겁니다. 하지만 걱정 마세요! 오늘은 RColorBrewer Palette를 활용해 데이터에 생동감을 불어넣는 방법을 알려드리겠습니다.
순차적(Sequential), 발산형(Diverging), 범주형(Qualitative) 팔레트의 차이와 활용법까지 모두 다룰 예정이니 끝까지 읽어보세요. 이 글을 읽고 나면 데이터 시각화가 한층 더 재미있어질 거예요!
1. RColorBrewer Palette란?
RColorBrewer는 R에서 제공하는 색상 팔레트 패키지로, 데이터 시각화를 위한 다양한 색상 조합을 제공합니다. 특히, 순차적(Sequential), 발산형(Diverging), 범주형(Qualitative) 팔레트를 제공하여 데이터의 특성에 맞는 색상을 손쉽게 선택할 수 있죠.
R Color Brewer’s Palettes 종류
- 순차적 팔레트 (Sequential): 데이터가 낮은 값에서 높은 값으로 진행될 때 적합
- 발산형 팔레트 (Diverging): 중간값을 기준으로 양 극단의 값을 강조할 때 유용
- 범주형 팔레트 (Qualitative): 서로 다른 범주를 구분하기에 적합
2. 팔레트 유형과 특징
2-1. 순차적 팔레트 (Sequential)
- 특징: 낮은 값에서 높은 값으로 진행되는 데이터를 표현할 때 적합합니다.
- 예시: 온도 변화, 매출 증가 등 연속적인 수치 데이터
- 팔레트 목록 (총 18개):
Blues, BuGn, BuPu, GnBu, Greens, Greys, Oranges, OrRd, PuBu, PuBuGn, PuRd, Purples, RdPu, Reds, YlGn, YlGnBu, YlOrBr, YlOrRd
✔️ 활용법
아래 코드를 통해 순차적 팔레트의 색상을 확인할 수 있습니다:
library(RColorBrewer)
display.brewer.pal(n = 9, name = "Blues")
🔍 예시 이미지
RColorBrewer Palette - 순차적 팔레트 예시 이미지
(Blues 팔레트가 점진적으로 어두워지며 높은 값을 강조)
2-2. 발산형 팔레트 (Diverging)
- 특징: 중간값을 기준으로 양 극단의 값을 강조할 때 사용합니다.
- 예시: 기온 변화(평균 기온 대비 상승/하락), 이익과 손실 등
- 팔레트 목록 (총 9개):
BrBG, PiYG, PRGn, PuOr, RdBu, RdGy, RdYlBu, RdYlGn, Spectral
✔️ 활용법
발산형 팔레트의 색상을 확인하는 방법은 아래와 같습니다:
display.brewer.pal(n = 11, name = "RdBu")
🔍 예시 이미지
RColorBrewer Palette - 발산형 팔레트 예시 이미지
(빨간색에서 파란색으로 변화하며 중간값을 기준으로 극단값을 강조)
2-3. 범주형 팔레트 (Qualitative)
- 특징: 서로 다른 범주를 구분할 때 적합합니다.
- 예시: 국가별 매출, 카테고리별 분류 등
- 팔레트 목록 (총 8개):
Accent, Dark2, Paired, Pastel1, Pastel2, Set1, Set2, Set3
✔️ 활용법
범주형 팔레트의 색상을 확인하려면 아래 코드를 사용하세요:
display.brewer.pal(n = 8, name = "Set1")
🔍 예시 이미지
RColorBrewer Palette - 범주형 팔레트 예시 이미지
(Set1 팔레트는 서로 다른 색상으로 범주를 명확하게 구분)
3. 팔레트 목록 확인 및 시각화
3-1. 전체 팔레트 확인하기
모든 팔레트의 목록과 색상을 확인하려면 아래의 코드를 실행하세요:
library(RColorBrewer)
display.brewer.all()
3-2. 팔레트 유형별 확인하기
유형별 팔레트를 확인하는 방법은 다음과 같습니다:
# 순차적 팔레트만 보기
display.brewer.all(type = "seq")
# 발산형 팔레트만 보기
display.brewer.all(type = "div")
# 범주형 팔레트만 보기
display.brewer.all(type = "qual")
4. 팔레트를 활용한 데이터 시각화 예제
4-1. 순차적 팔레트: 히트맵
순차적 팔레트를 사용해 히트맵을 그리는 코드입니다:
library(RColorBrewer)
set.seed(123)
data <- matrix(rnorm(100), nrow=10)
colnames(data) <- paste0("Col", 1:10)
rownames(data) <- paste0("Row", 1:10)
heatmap(data,
col = brewer.pal(9, "Blues"),
main = "Using a Sequential Palette for a Heatmap",
margins = c(5,5))
4-2. 발산형 팔레트: 타일맵
발산형 팔레트를 사용한 타일맵 예제입니다:
library(RColorBrewer)
library(ggplot2)
set.seed(123)
df <- data.frame(x = rep(1:10, each=10), y = rep(1:10, times=10), value = rnorm(100))
ggplot(df, aes(x=x, y=y, fill=value)) +
geom_tile() +
scale_fill_distiller(palette = "RdBu", direction = 1) +
theme_minimal() +
labs(title = "Using a Diverging Palette for a Tile Map", x = "X축", y = "Y축")
4-3. 범주형 팔레트: 막대 그래프
범주형 팔레트로 막대 그래프를 그리는 예제입니다:
library(RColorBrewer)
library(ggplot2)
categories <- c("A", "B", "C", "D", "E")
values <- c(23, 45, 32, 58, 29)
df <- data.frame(categories, values)
ggplot(df, aes(x=categories, y=values, fill=categories)) +
geom_bar(stat="identity") +
scale_fill_brewer(palette="Set3") +
theme_minimal() +
labs(title = "Using a Qualitative Palette for a Bar Chart", x = "Category", y = "Value")
마무리
RColorBrewer는 데이터 시각화를 위한 강력한 도구입니다.
- 순차적 팔레트: 연속 데이터 표현
- 발산형 팔레트: 중간값 기준 극단값 강조
- 범주형 팔레트: 서로 다른 범주 구분
이제 RColorBrewer를 사용해 멋진 시각화를 만들어보세요!
데이터 분석 결과가 한눈에 들어오고, 보다 생동감 있고 설득력 있는 시각화를 완성할 수 있을 것입니다.
'IT' 카테고리의 다른 글
R 코딩 사이트 5곳 추천: 온라인에서 시작하는 R 프로그래밍 (0) | 2025.02.28 |
---|---|
결혼과 출산에 대한 인식 변화: 데이터 분석 및 시각화 (0) | 2025.02.28 |
파이썬 지도 시각화 라이브러리 완벽 가이드: Folium부터 GeoPandas까지 (0) | 2025.02.28 |
구글 코랩 사용법 완벽 가이드: 캐글 API로 데이터 분석 시작하기 (0) | 2025.02.28 |
워드프레스 차일드 테마 만들기: 초보자도 쉽게 따라하는 방법 (0) | 2025.02.28 |