Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Pandas와 Matplotlib으로 클래스별 히스토그램 그리기

Pandas와 Matplotlib을 활용하면 데이터프레임의 각 열(클래스)에 대한 히스토그램을 손쉽게 시각화할 수 있습니다. 이 글에서는 단계별 절차와 함께 실제 예제 코드를 통해 히스토그램을 그리는 방법을 살펴보겠습니다.

히스토그램 그리는 단계

  • 그림 크기를 설정하고 서브플롯 사이 및 주변의 여백(padding)을 조정합니다.
  • Pandas 데이터프레임을 사용해 다양한 유형의 값을 포함하는 표 형태의 데이터를 생성합니다.
  • 데이터프레임의 값으로부터 히스토그램을 만듭니다.
  • show() 메서드를 호출하여 그림을 화면에 표시합니다.

예제 코드

from matplotlib import pyplot as plt
import pandas as pd

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

df = pd.DataFrame({
    'a': [1, 1, 1, 1, 3],
    'b': [1, 1, 2, 1, 3],
    'c': [2, 2, 2, 1, 3],
    'd': [2, 1, 2, 1, 3],
})

df.hist()
plt.show()

실행 결과

위 코드를 실행하면 각 열(a, b, c, d)마다 하나씩 총 네 개의 히스토그램이 개별 서브플롯으로 나타납니다. df.hist() 메서드는 데이터프레임 내 수치형 열을 자동으로 감지하여 각각의 분포를 히스토그램 형태로 그려줍니다.

Pandas와 Matplotlib으로 클래스별 히스토그램 그리기

주요 설정 설명

plt.rcParams["figure.figsize"]는 전체 그림의 크기를 인치 단위로 지정합니다. 또한 figure.autolayout을 True로 설정하면 축 레이블이나 제목이 잘리지 않도록 레이아웃이 자동으로 조정됩니다.

필요에 따라 bins(구간 수), grid(격자 표시), color(색상) 등의 옵션을 추가하면 히스토그램의 세부 스타일을 더욱 정교하게 조정할 수 있습니다. 이 방법은 데이터의 분포를 빠르게 파악하고자 할 때 매우 유용하게 활용됩니다.