
개발자를 위한 데이터 시각화 가이드 (Part 3)
산점도, 버블 차트, 히트맵 등 관계 분석 차트와 박스 플롯, 스웜 플롯 등 분포 분석 차트를 알아봅니다.
관계와 클러스터 분석
Part 2에서는 막대 차트와 라인 차트로 카테고리 비교와 시간에 따른 트렌드(Trend)를 분석해 봤어요. 이번 Part에서는 변수 간의 관계와 데이터의 분포를 탐색하는 차트들을 살펴볼게요.
이런 차트들은 변수 간 관계를 발견하고, 패턴을 감지하고, 데이터셋 내 클러스터(Cluster, 군집)를 분석할 때 자주 쓰이죠. 시장 조사, 과학적 분석, 예측 모델링 같은 분야에서 특히 유용하죠.
10. 산점도
두 변수 사이의 관계를 확인할 때 산점도가 가장 직관적이에요.
처음 산점도를 봤을 때 "점이 흩어져 있는데 뭘 알 수 있지?"라고 생각했어요. 그런데 실제로 사용자 데이터를 찍어보니까 클러스터가 바로 보이는 것을 확인할 수 있었어요.
산점도는 x/y 좌표 평면에 데이터 포인트(Data Point)를 찍어서 두 변수를 비교하는 차트예요. 변수 간 상관관계를 한눈에 파악할 수 있는데, 양수(상승), 음수(하락), 무상관(상관 없음) 중 어떤 관계인지 바로 확인할 수 있어요.
분포, 트렌드, 이상치를 시각화하는 강력한 도구이기도 해요. 시간에 따른 단일 포인트보다는 여러 데이터 포인트를 한꺼번에 플로팅(Plotting)할 때 가장 효과적이에요.
언제 쓸까요?
데이터에서 패턴이나 클러스터를 찾고 싶을 때, 산점도와 히트맵이 가장 직관적인 선택이에요.
10.1 단일 산점도
X, Y 그리드에 개별 데이터 포인트를 플로팅한 기본적인 산점도예요. 아래 예시는 나이 대 BMI를 플로팅해서 양의 상관관계를 보여주고 있어요.
10.2 그룹화 산점도
그룹화 산점도는 색상이나 마커 스타일로 그룹을 구분해서 여러 카테고리를 한 번에 비교할 수 있어요. 같은 데이터라도 그룹별로 나눠서 보면 패턴이 훨씬 선명하게 드러나는 것을 확인할 수 있어요.
11. 버블 차트
버블 차트는 산점도와 비슷하지만 한 단계 더 유연해요. x/y 좌표 평면에 플로팅하는 것에 더해 다양한 크기나 색상으로 데이터를 표현할 수 있어서 더 깊이 분석할 수 있어요.
데이터 포인트의 집중도를 보여줄 때 특히 유용하고, 시각화의 보조 요소보다는 핵심 기능으로 쓸 때 가장 효과적이에요.
11.1 X/Y 플롯 버블 차트
산점도에 세 번째 변수인 스케일을 버블 크기로 추가한 형태예요. 아래 예시에서는 인구수(size)를 버블 크기로 표현하고 있어요.
12. 페어플롯
페어플롯으로 여러 변수 간의 상관관계를 한눈에 파악할 수 있어요. 두 가지 주요 구성 요소가 있는데요:
- 대각선: 두 개의 다른 데이터셋 분포 비교
- 비대각선: 두 가지 다른 차트 형식으로 단일 데이터셋 표시
이 구조 덕분에 두 변수가 상관관계가 있는지, 변수가 정규 분포를 따르는지 같은 관계를 빠르게 평가할 수 있어요. 변수가 많을수록 매트릭스가 커지니까, 핵심 변수를 먼저 골라서 보는 게 실용적이에요.

13. 히트맵
테이블의 숫자가 너무 많아서 패턴이 안 보일 때 히트맵으로 바꿔보면, 색상만으로 핫스팟이 바로 드러나서 효과적이에요.
히트맵은 Part 1의 테이블을 시각적으로 강화한 형태라고 볼 수 있어요. 테이블이 숫자를 직접 보여준다면, 히트맵은 그 값들을 밀도에 따라 색상으로 변환해서 패턴을 한눈에 파악할 수 있게 해주죠. 값을 카테고리로 그룹화하고 색상으로 밀도를 표시하니까 측정값을 쉽게 스캔할 수 있어요. 색상이 진할수록 밀도가 높아요.
분포와 이상치 분석
이런 차트들은 데이터의 분포를 검사하고 이상치를 찾아낼 때 자주 쓰여요. 품질 관리, 리스크 분석, 데이터셋의 변동성 이해 같은 작업에 꼭 필요해요.
14. 박스 플롯
Part 2의 히스토그램이 데이터 분포의 "형태"를 보여줬다면, 박스 플롯(또는 상자-수염 다이어그램)은 분포의 핵심 통계량을 간결하게 요약해 줘요. 데이터가 어떻게 퍼져 있는지 다섯 가지 핵심 포인트로 보여줘요:
- 최솟값
- 제1사분위수
- 중앙값
- 제3사분위수
- 최댓값
차트에는 대부분의 데이터가 있는 곳(중간 50%)을 보여주는 상자, 중앙값을 나타내는 중앙선, 그리고 최저값과 최고값으로 뻗어나가는 "수염"이 있어요.
15. 바이올린 플롯
바이올린 플롯이 처음에는 좀 낯설 수 있어요. 저도 처음 봤을 때 "이게 뭘 보여주는 거지?" 싶었어요. 그런데 한번 읽는 법을 알고 나면, 박스 플롯보다 훨씬 풍부한 정보를 담고 있다는 걸 알 수 있어요.
바이올린 플롯은 박스 플롯과 밀도 플롯을 합친 형태로, 데이터가 어떻게 퍼져 있는지 더 완전한 그림을 보여줘요. 외부 모양이 분포를 나타내고, 너비는 히스토그램처럼 특정 값이 얼마나 자주 나타나는지를 보여주죠.
박스 플롯보다 세부 사항이 더 풍부하지만, 그만큼 읽기 어려울 수 있어서 상대적으로 덜 쓰여요. 익숙하지 않은 사람들에게는 히스토그램이나 밀도 플롯 같은 더 단순한 차트가 읽기 쉬울 수 있어요.
아래는 바이올린 플롯과 비슷한 역할을 하는 스웜 플롯이에요. 개별 데이터 포인트를 직접 시각화해서 분포 패턴을 보여줘요.
16. KDE 플롯
커널 밀도 추정(KDE) 플롯은 특정 값이 나타날 가능성이 가장 높은 곳을 보여줘서, 데이터의 전체 분포를 파악하는 데 도움이 돼요. 히스토그램이나 박스 플롯보다 **더 섬세한 인사이트(Insight)**를 줄 수 있죠.
비닝(Binning, 데이터를 구간별로 나누는 과정)이 필요해서 해상도가 제한되는 히스토그램과 달리, KDE 플롯은 데이터 분포를 부드러운 곡선으로 보여주기 때문에 여러 변수를 비교할 때 특히 유용해요.

마무리
Part 3 요약
산점도와 버블 차트는 변수 간 관계를 파악하는 데, 박스 플롯과 스웜 플롯은 데이터 분포를 이해하는 데 꼭 필요해요. 데이터의 특성에 맞는 차트를 선택해 보세요.
관계와 분포를 보여주는 차트들은 처음엔 어렵게 느껴질 수 있지만, 한번 익히면 데이터에서 숨겨진 패턴을 발견하는 재미가 있어요.
다음 Part에서는 선버스트, 생키 다이어그램, 네트워크 그래프 등 계층 구조와 흐름 분석 차트를 살펴볼게요.
참고 자료
- Information is Beautiful - David McCandless의 수상 경력 시각화와 리소스
- Nightingale - Data Visualization Society의 데이터 시각화 이론과 실무 저널