Programming

데이터 시각화 핵심 개념 한 번에 정리

Lucas.Kim 2026. 2. 15. 13:27
반응형

Matplotlib · Seaborn · 기본 차트 유형 완전 요약

데이터 분석에서 시각화는 선택이 아니라 필수입니다.
모델링 이전에 데이터의 구조, 분포, 관계를 이해하는 과정이 반드시 필요하기 때문입니다.

이번 글에서는 Python 데이터 시각화의 핵심 라이브러리인 Matplotlib과 Seaborn의 차이,
그리고 상황별로 어떤 차트를 써야 하는지를 한 번에 정리합니다.

1️⃣ Matplotlib vs Seaborn 차이

✔ Matplotlib

  • Python의 기본 시각화 라이브러리
  • 저수준(low-level) API 제공
  • 세밀한 제어 가능
  • 다만 코드가 다소 복잡

✔ Seaborn

  • Matplotlib 기반의 통계 시각화 특화 라이브러리
  • 데이터프레임 기반 자동 처리
  • 기본 스타일이 세련됨
  • 범주형·통계 요약 시각화에 강점

👉 정리하면

Matplotlib은 "직접 설계", Seaborn은 "빠르고 통계 친화적 시각화"에 강합니다.


2️⃣ Matplotlib 객체 구조 이해 (Figure vs Axes)

Matplotlib은 객체 구조를 이해하면 훨씬 쉬워집니다.

Figure 전체 캔버스
Axes 실제 그래프가 그려지는 좌표 영역
fig, ax = plt.subplots()
ax.set_xlabel("X label")
ax.set_ylabel("Y label")

✔ Axes 객체를 직접 다룰 때는 set_ 접두어를 사용합니다.
(예: ax.set_xlabel(), ax.set_title())


3️⃣ Seaborn의 핵심 파라미터

🎨 hue 파라미터

  • 범주형 변수를 색상으로 구분
  • 데이터의 추가 정보 표현
  • 그룹 간 분포 차이 파악에 매우 유용

예:

sns.scatterplot(data=df, x="age", y="fare", hue="sex")

4️⃣ 상황별 추천 차트 유형 정리

🔹 상관관계 한눈에 보기

Correlation Heatmap

  • 여러 변수 간 상관계수를 색상으로 표현
  • 관계 강도와 방향 파악에 최적

🔹 두 연속형 변수 관계

Scatter Plot

  • 변수 간 패턴, 군집, 이상치 확인
  • 가장 기본적인 관계 분석 도구

🔹 연속형 데이터 분포 확인

Histogram

  • 값의 빈도 분포 확인
  • 데이터 왜도·치우침 확인

🔹 분포 + 통계 요약 함께 보기

Box Plot / Violin Plot

Box plot 중앙값, 사분위수, 이상치
Violin plot 분포 밀도까지 시각화

🔹 범주형 X + 연속형 Y

Seaborn Barplot

  • 기본적으로 평균값을 표시
  • 신뢰구간(error bar) 포함 가능

5️⃣ 서브플롯에서 Seaborn 사용하는 방법

fig, axes = plt.subplots(2,2)

sns.scatterplot(..., ax=axes[0,0])

✔ ax 인자로 특정 Axes 객체 전달
→ 원하는 위치에 그래프 배치 가능


🎯 전체 핵심 요약

  • Matplotlib은 저수준 제어, Seaborn은 통계 시각화 특화
  • Axes 객체는 실제 그래프 영역
  • hue는 색상 기반 범주 구분
  • Scatter → 관계 분석
  • Heatmap → 상관계수 분석
  • Histogram → 분포 확인
  • Box/Violin → 분포 + 요약 통계
  • Barplot → 평균 비교

이 글은 앞으로 이어질 실전 데이터 시각화 시리즈의 기초 정리편입니다.
다음 글에서는 실제 예제 데이터로 차트별 활용 전략을 정리해보겠습니다.

반응형