보기 좋은 차트 만들기
matplotlib 패키지와 numpy 패키지를 활용해서 바 차트를 보기 좋게 만들어 보겠습니다. 비주얼 스튜디오 코드에서 새로운 파일을 생성하고 파일명을 'step_3_3.py'로 변경하세요. 코드를 입력한 뒤, 대화형 창에서 실행하면 'output' 폴더에 실행 결과가 png 파일로 생성됩니다.
from pathlib import Path
import matplotlib.pyplot as plt
import numpy as np # 3
from step_2_1 import OUT_DIR # 이전에 작성한 모듈을 불러옵니더.
from step_3_1 import load_plot_data
plot_data = load_plot_data()
log_size = np.log(plot_data["size"]) # 8
fig, ax = plt.subplots(figsize=(16, 9), dpi=100)
ax.barh(plot_data["stem"], log_size) # 10
ax.grid(True, axis="x") # 촉 그리드 # 11
ax.tick_params(labelbottom=False, length=0, labelsize=20) # 축 눈금 # 12
fig.set_layout_engine("tight") # 차트 여백 # 13
fig.savefig(OUT_DIR / f"{Path(__file__).stem}.png") # 14
[실행결과]

03 수치 연산을 위해 numpy 패키지를 불러옵니다. matplotlib를 설치하면 자동으로 설치됩니다.
08 함수 log()를 사용하여 주어진 숫자 데이터를 로그로 변환하고, 변수 log_size에 저장합니다. 폴더 크기와 같이 특정 데이터의 크기가 지나치케 큰 경우 로그를 적용해 단위를 조정하면 이해하기 쉽게 시각화할 수 있습니다.
10 함수 subplots()를 사용하여 객체 Figure와 Axes를 생성하고 각각 fig, ax 변수에 저장합니다. 이떼 매개 변수 figsizedp 차트 크기를 (가로, 세로) 형식으로, dpi에 해상도를 전달하여 전체 해상도를 설정합니다. 단위는 인치와 인치 당 픽셀입니다.
11 함수 barh()를 사용하여 바 차트를 그립니다. 이때 두 번째 입력값으로 log_size를 전달하여 가로축에 로그를 적용합니다.
12 함수 grid()를 사용하여 차트에 그리드에 출력합니다. 이때 axis 매개변수의 값으로 'both', 'x', 'y' 등을 전달하여 출력할 그리드의 형태를 설정할 수 있습니다.
13 함수 tick_params()를 사용하여 축 눈금을 설정합니다, 매개변수 labelbottom과 length에 각각 False와 0을 전달하여 X축 눈금을 지우고, labelsize에 20을 전달하여 Y축 눈금의 폰트 크기를 설정합니다.
14 함수 set_layout_engine()를 사용하여 차트 여백을 조정합니다. 이 함수의 입력값으로 'tight'를 전달하면 차트 여백을 최소화할 수 있습니다.
'프로그래밍 언어 > Python' 카테고리의 다른 글
| 월별 카드 지출 내역 분석 - 카드 명세서 다운로드 (0) | 2025.10.24 |
|---|---|
| 월별 카드 지출 내역 분석 - 파이썬 패키지 준비하기 (0) | 2025.10.21 |
| 데이터 시각화 첫걸음 떼기 (0) | 2025.10.15 |
| 데이터 시각화하기 - 데이터 전처리하기 (0) | 2025.10.12 |
| 폴더 크기 측정하기 (0) | 2025.10.09 |