Pandas와 Matplotlib을 활용하면 데이터프레임의 각 열에 대한 히스토그램을 손쉽게 시각화할 수 있습니다. 이 글에서는 단계별로 히스토그램을 그리는 방법과 실제 예제 코드를 소개합니다.
히스토그램 그리기 단계
- 먼저 figure 크기를 설정하고 서브플롯 간의 여백(padding)을 조정합니다.
- Pandas 데이터프레임을 사용해 다양한 유형의 값이 포함된 표 형태의 데이터를 생성합니다.
- 데이터프레임 객체에 내장된 hist() 메서드를 호출하여 히스토그램을 만듭니다.
- 마지막으로 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()코드 설명
위 코드에서 plt.rcParams["figure.figsize"]는 전체 그림의 크기를 가로 7.50인치, 세로 3.50인치로 지정합니다. 또한 figure.autolayout 옵션을 True로 설정하면 레이블이나 제목이 잘리지 않도록 여백이 자동으로 조절됩니다.
데이터프레임은 네 개의 열(a, b, c, d)과 다섯 개의 행으로 구성되어 있으며, df.hist()를 호출하면 각 열별로 히스토그램이 자동으로 생성됩니다. Pandas의 hist() 메서드는 내부적으로 Matplotlib을 사용하기 때문에 별도의 추가 설정 없이도 깔끔한 결과물을 얻을 수 있습니다.
실행 결과
코드를 실행하면 각 열(a, b, c, d)마다 하나씩, 총 네 개의 히스토그램이 격자 형태로 출력됩니다. 각 히스토그램은 해당 열에 포함된 값들의 분포 빈도를 막대 그래프로 보여줍니다.
이처럼 Pandas 데이터프레임과 Matplotlib을 함께 사용하면 몇 줄의 코드만으로 데이터 분포를 직관적으로 파악할 수 있어, 탐색적 데이터 분석(EDA) 단계에서 매우 유용하게 활용됩니다.