본문 바로가기
Python - 자동화

[5편] 엑셀 데이터로 차트 자동 생성하기 - 파이썬으로 막대그래프, 꺾은선그래프 그리기

by ramzee 2025. 5. 5.

1. 왜 이걸 해야 할까?

회사의 보고서, 프레젠테이션, 리포트에는 거의 항상 그래프가 필요합니다.

하지만 엑셀에서 일일이 표를 선택하고 차트를 그리는 작업,

  • 데이터가 많아지면 시간 소모가 크고,
  • 업데이트될 때마다 새로 그려야 합니다.

파이썬으로 자동으로 그려버리면 5초 만에 멋진 그래프 완성!

---

2. 어떤 상황에서 유용할까?

  • 팀별 매출, 부서별 실적 그래프를 반복 생성해야 할 때
  • 데이터가 자주 바뀌어도 자동 업데이트가 필요할 때
  • 빠르게 보기 좋은 시각화가 필요할 때

차트 자동화는 일의 속도와 퀄리티를 둘 다 올려줍니다. ---

3. 준비물

  • Python 설치
  • pandasmatplotlib 라이브러리 설치
  • sample1.xlsx 파일 다운로드 완료

설치 방법:

pip install pandas matplotlib openpyxl

샘플 파일 다운로드: 

sample1.xlsx
0.01MB

4. 본격 실습: 막대그래프, 꺾은선그래프 그리기

4-1. 파일 불러오기

import pandas as pd

# 파일 경로 (※ 경로 슬래시는 반드시 / 로!)
file_path = 'C:/Users/YourName/Desktop/sample1.xlsx'

# 엑셀 데이터 읽기
df = pd.read_excel(file_path)

---

4-2. 한글 폰트 깨짐 방지 + 스타일 설정

import matplotlib.pyplot as plt
from matplotlib import rcParams

# 한글 폰트 설정
rcParams['font.family'] = 'Malgun Gothic'
rcParams['axes.unicode_minus'] = False

# 부드러운 파스텔톤 컬러 지정
pastel_colors = ['#A8D5BA', '#F9D5E5', '#FBC687', '#C3DDFD', '#D5AAFF']

✅ 이 설정을 추가하면 한글이 깨지지 않고, 그래프 색상이 파스텔톤으로 이쁘게 나옵니다.

---

4-3. 부서별 총 매출액 막대그래프

# 부서별 총 매출액
dept_sum = df.groupby('부서')['매출액'].sum()

plt.figure(figsize=(10,6))
plt.bar(dept_sum.index, dept_sum.values, color=pastel_colors[:len(dept_sum)])

plt.title('부서별 총 매출액', fontsize=16)
plt.xlabel('부서', fontsize=12)
plt.ylabel('총 매출액', fontsize=12)

plt.xticks(rotation=45)
plt.tight_layout()
plt.show()

✅ 밝은 흰색 배경 + 부드러운 파스텔톤 막대그래프가 생성됩니다!

---

4-4. 부서별 평균 매출 꺾은선그래프

# 부서별 평균 매출액 꺾은선그래프
dept_mean = df.groupby('부서')['매출액'].mean()

plt.figure(figsize=(10,6))
plt.plot(dept_mean.index, dept_mean.values, marker='o', color='#7BC8A4', markersize=8, linewidth=2)

plt.title('부서별 평균 매출 추이', fontsize=16)
plt.xlabel('부서', fontsize=12)
plt.ylabel('평균 매출액', fontsize=12)

plt.grid(True, linestyle='--', linewidth=0.5)
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()

✅ 꺾은선그래프도 부드러운 연초록 계열로 깔끔하게 완성됩니다!

---

5. 📢 여기서 주의사항!

  • 파일 경로는 반드시 / 슬래시 사용!
  • 엑셀 열 이름은 정확히 입력해야 합니다. ('부서', '매출액')
  • 한글 폰트 설정을 반드시 추가하세요.
  • 부드러운 색상을 직접 지정하면 훨씬 고급진 그래프를 만들 수 있습니다.

---

6. 실무 적용 꿀팁

  • 주간/월간 매출 리포트 차트를 자동으로 생성할 수 있습니다.
  • 회사 브랜드 컬러에 맞게 색상을 커스터마이징할 수 있습니다.
  • PNG, PDF로 저장해서 바로 보고서에 첨부할 수 있습니다.

---

7. 요약

항목 요약
기능 엑셀 데이터로 부드러운 차트 자동 생성
효과 차트 생성 시간 단축 + 시각적 피로 감소
준비물 Python + pandas + matplotlib + openpyxl
독자 초보자 OK (복붙 실습 가능)
주의사항 한글 폰트 설정 + 슬래시 방향 수정 + 부드러운 색상 직접 설정

---

✨ 다음편 예고

[6편] 여러 개의 엑셀 파일에서 조건에 맞는 데이터만 뽑아서 통합하기
: 수십 개 파일 중 필요한 부분만 추출해 자동으로 통합하는 실습을 이어갑니다!