파워포인트로 프로젝트 상태를 시각화하기
이제 파이썬을 이용해 엑셀에서 불러온 프로젝트 상태 데이터를 파워포인트 슬라이드로 시각화
해보겠습니다.
프로젝트 이름 | 진척도 (%) | 시작일 | 종료일 | 문제점 |
---|---|---|---|---|
웹사이트 리뉴얼 | 80 | 2024-07-01 | 2024-12-31 | 개발 지연 |
마케팅 캠페인 | 50 | 2024-08-15 | 2024-11-15 | 없음 |
신규 제품 출시 | 30 | 2024-09-01 | 2025-01-31 | 생산 문제 발생 |
python-pptx
를 사용해 엑셀 데이터를 표로 변환하고, 각 프로젝트의 진척도를 막대 그래프로 시각화해보겠습니다.
주요 코드 설명
실습 코드는 크게 다음과 같은 순서로 진행됩니다.
1. 표 위치 및 크기 정의
rows, cols = len(data), len(data[0]) left = Inches(0.5) top = Inches(0.5) width = Inches(9.0) height = Inches(2.0)
python-pptx 라이브러리의 Inches
클래스를 사용해 표의 위치와 크기를 정의합니다.
표가 삽입될 위치를 왼쪽 기준으로 0.5인치
, 상단 기준으로 0.5인치
로 설정하고, 표의 너비와 높이를 각각 9.0인치
와 2.0인치
로 설정합니다.
2. 슬라이드에 표 추가
# add_table로 슬라이드에 표 추가 table = slide.shapes.add_table(rows, cols, left, top, width, height).table
슬라이드에 표를 추가하기 위해 slide.shapes.add_table
메서드를 사용합니다.
3. 표 셀에 데이터 추가
# 표에 엑셀 데이터 입력 for row_idx, row_data in enumerate(data): # 각 행의 데이터를 순회하며 셀에 데이터 입력 for col_idx, cell_value in enumerate(row_data): # 각 셀에 데이터 입력 table.cell(row_idx, col_idx).text = str(cell_value)
enumerate
함수를 사용해 각 행의 데이터를 순회하며 표의 각 셀에 데이터를 입력합니다.
각 셀에 데이터를 입력할 때는 table.cell(row_idx, col_idx).text
를 사용합니다.
4. 차트 생성을 위한 데이터 준비
# 차트 생성을 위한 데이터 준비 (프로젝트 이름과 진척도 %) chart_data = CategoryChartData() # 첫 번째 행은 제외 (헤더) chart_data.categories = [row[0] for row in data[1:]] # 진척도 (%) 데이터 추가 chart_data.add_series('진척도 (%)', (row[1] for row in data[1:]))
차트 생성을 위한 데이터를 준비합니다.
CategoryChartData
클래스를 사용해 차트 데이터를 생성하고, chart_data.categories
에 프로젝트 이름을, chart_data.add_series
에 진척도(%) 데이터를 추가합니다.
5. 슬라이드에 차트 추가
x, y, cx, cy = Inches(0.5), Inches(3.0), Inches(5.0), Inches(3.0) # 차트 추가 (세로 막대형 차트) chart = slide.shapes.add_chart( XL_CHART_TYPE.COLUMN_CLUSTERED, x, y, cx, cy, chart_data ).chart
x, y, cx, cy
로 차트의 위치와 크기를 설정하고, slide.shapes.add_chart
메서드를 사용해 슬라이드에 차트를 추가합니다.
XL_CHART_TYPE
는 차트의 종류를 지정하는 열거형 상수로, COLUMN_CLUSTERED
는 세로 막대형 차트를 의미합니다.
가이드라인
AI 튜터
배포
디자인
업로드
수업 노트
즐겨찾기
도움말
코드 에디터
실행 결과
문서가 비어 있습니다.
코드를 실행해보세요.