컬러맵의 세 가지 유형
컬러맵은 데이터 값을 색상으로 매핑하는 규칙입니다. 데이터 특성에 맞는 컬러맵을 골라야 올바른 해석이 가능합니다.
1. 순차형 (Sequential)
낮은 값에서 높은 값으로 한 방향으로 진해지는 컬러맵. 한쪽 방향으로만 의미 있는 데이터에 사용합니다.
| 컬러맵 | 색상 범위 | 권장 사용 |
|---|---|---|
'Blues' |
흰색 → 진파랑 | 빈도, 밀도 |
'Greens' |
흰색 → 진초록 | 성장률, 비율 |
'YlOrRd' |
노랑 → 주황 → 빨강 | 강도, 위험도 |
'viridis' |
보라 → 초록 → 노랑 | 범용, 색각 이상 대응 |
'plasma' |
보라 → 분홍 → 노랑 | 범용, 색각 이상 대응 |
2. 발산형 (Diverging)
0을 기준으로 양쪽 방향으로 색이 달라지는 컬러맵. 양수/음수, 평균 대비 편차 등에 사용합니다.
| 컬러맵 | 색상 범위 |
|---|---|
'RdBu' |
빨강 ← 흰색 → 파랑 |
'coolwarm' |
파랑 ← 회색 → 빨강 |
'bwr' |
파랑 ← 흰색 → 빨강 |
3. 정성형 (Qualitative)
카테고리 데이터처럼 순서나 크기 의미가 없는 데이터에 사용합니다. 색상끼리 최대한 구별되도록 설계됩니다.
| 컬러맵 | 색상 수 |
|---|---|
'Set1' |
9가지 |
'Set2' |
8가지 |
'tab10' |
10가지 (Matplotlib 기본) |
'tab20' |
20가지 |
색각 이상(Color Blindness) 접근성
색각 이상이 있는 독자도 읽을 수 있게 하려면 'viridis', 'plasma', 'cividis' 중 하나를 사용하거나, 빨강-초록 조합을 피합니다.
# 히트맵에 컬러맵 적용ax.imshow(data, cmap='viridis') # 색각 이상 대응# 스캐터에 컬러맵 적용ax.scatter(x, y, c=values, cmap='RdBu', vmin=-1, vmax=1)