Data Visualization: 3-Layer Architecture (Univariate, Bivariate, Multivariate)
Source: 2026-04-26-data-visualization-3-layer-matplotlib-seaborn Type: Article (Real Python + Towards Data Science) Valid as of: 2026-04-26
핵심 Takeaway
- 3계층 구조 — 데이터 분석은 단변량(개별 변수) → 이변량(관계) → 다변량(복합 패턴) 순서로 진행 (출처: data-visualization-3-layer-architecture-skala > 왜-3계층인가)
- 단변량 시각화 — 히스토그램, KDE, 박스플롯, 바이올린 플롯으로 개별 변수의 분포·범위·이상치 파악 (출처: data-visualization-3-layer-architecture-skala > 계층-1-단변량-시각화-univariate)
- 이변량 시각화 — 산점도, 라인 플롯, 히트맵으로 두 변수 간 상관성·인과성·상호작용 발견 (출처: data-visualization-3-layer-architecture-skala > 계층-2-이변량-시각화-bivariate)
- 다변량 시각화 — 페어플롯, 3D 산점도, 등고선으로 3개 이상 변수의 복합적 관계 탐색 (출처: data-visualization-3-layer-architecture-skala > 계층-3-다변량-시각화-multivariate)
- 시각화 선택 기준 — 변수 개수·타입(연속형vs범주형)에 따라 체계적으로 도구 선택 (출처: data-visualization-3-layer-architecture-skala > 시각화-선택-기준-의사결정-트리)
상세 요약
왜 3계층인가?
데이터 분석의 필연적 흐름:
- 단변량: “각 변수의 분포는?” → 개별 변수의 기본 통계 파악
- 이변량: “변수 간의 관계는?” → 상관성, 인과성 탐색
- 다변량: “전체 변수의 복합적 관계는?” → 고차원 패턴, 군집, 특이점 발견
계층 1: 단변량 시각화
목적: 개별 변수의 분포, 범위, 이상치 파악
1-1. 히스토그램 (Histogram)
- 연속형 변수의 분포 표시
- 평균, 범위, 치우침(skewness), 이상치 파악
1-2. KDE (Kernel Density Estimation)
- 히스토그램보다 부드러운 확률분포 곡선
- 극단값에 덜 민감
- 확률밀도함수 해석 용이
1-3. 박스플롯 (Box Plot)
- 사분위수, 중앙값, 이상치 한눈에 파악
- 구조: Min — Q1 — Q2(중앙값) — Q3 — Max
- 이상치 기준: Q1 - 1.5×IQR ~ Q3 + 1.5×IQR
1-4. 바이올린 플롯 (Violin Plot)
- 박스플롯 + 분포의 형태까지 표현
- 카테고리별 비교에 유용
계층 2: 이변량 시각화
목적: 두 변수 간의 관계: 상관성, 인과성, 상호작용 발견
2-1. 산점도 (Scatter Plot)
- 두 연속형 변수의 관계
- 양의 상관(↗), 음의 상관(↘), 무상관, 비선형 패턴 확인
2-2. 라인 플롯 (Line Plot)
- 시계열 또는 순서가 있는 데이터
- 추세 변화 시각화
2-3. 히트맵 (Heatmap)
- 많은 변수의 상관계수 행렬
- 색상: 빨강(+1, 강한 양의 상관) → 흰색(0, 무상관) → 파랑(-1, 강한 음의 상관)
2-4. 바이올린 + 스트립 플롯
- 카테고리 × 연속형 변수의 분포 비교
2-5. 조건부 분포 플롯
- 특정 조건 하에서의 분포 변화 (FacetGrid)
계층 3: 다변량 시각화
목적: 3개 이상 변수의 복합적 관계: 군집, 패턴, 상호작용 발견
3-1. 페어플롯 (Pair Plot)
- 모든 변수 쌍의 관계를 한눈에 보기
- 대각선: 개별 분포, 비대각선: 변수 쌍의 관계
3-2. 3D 산점도
- 3개 연속형 변수의 관계
- 색상으로 4번째 변수 표현 가능
3-3. 등고선 플롯 (Contour Plot)
- 2개 연속형 변수의 밀도 분포
- Hexbin 플롯으로 고밀도 영역 시각화
3-4. 산점도 + 회귀선
- 상관성이 있는 2개 변수의 추세선
- 신뢰도 구간 표시 가능
시각화 선택 기준 (의사결정 트리)
1개 변수?
- 연속형 → 히스토그램 + KDE 또는 박스플롯
- 범주형 → 막대 그래프
2개 변수?
- 연속형 × 연속형 → 산점도 + 회귀선
- 연속형 × 범주형 → 박스플롯 또는 바이올린
- 범주형 × 범주형 → 교차표 + 히트맵
3+ 개 변수?
- 모두 연속형 → 페어플롯 또는 3D 산점도
- 4개 이상 → 히트맵 (상관계수)
- 혼합형 → 색상/크기/면으로 3번째 변수 표현
EDA 포트폴리오 구성
- 데이터 개요 (행·열 수, 데이터 타입)
- 단변량 분석 (수치형 3개, 범주형 2개 시각화)
- 이변량 분석 (주요 관계 5개)
- 다변량 분석 (페어플롯, 상관계수 히트맵, 3D)
- 통계 요약 (기술통계, 주요 상관계수, Key Insights 5개)
피해야 할 것
- 3D 파이 차트 (읽기 어려움)
- 너무 많은 색상 (가독성 저하)
- 범례 없이 색상 사용
- 축 레이블·제목 누락
- 너무 작은 폰트
연결되는 위키 페이지
- exploratory-data-analysis-eda — EDA 개념
- matplotlib-seaborn — matplotlib/seaborn 도구
- data-distribution — 분포 이해
- correlation-analysis — 상관 분석
- eda-exploratory-data-analysis-geeksforgeeks — EDA 8단계
- outlier-detection-iqr-zscore-medium — 이상치 탐지