[python] ReportLab 데이터 요약

들어가기 전에, ReportLab은 파이썬의 PDF 생성을 위한 강력한 라이브러리입니다. 이를 사용하면 간단하게 데이터를 시각화하고 요약할 수 있습니다. 이번 블로그에서는 ReportLab을 사용하여 데이터를 요약하는 방법을 알아보겠습니다.

필요한 패키지 설치

먼저 ReportLab 라이브러리를 설치해야 합니다. 아래의 명령어를 사용하여 설치할 수 있습니다.

pip install reportlab

기본적인 PDF 생성

데이터 요약을 위해 먼저 PDF를 생성하는 기본적인 코드를 작성해보겠습니다. 아래의 코드를 사용하여 빈 PDF 문서를 생성할 수 있습니다.

from reportlab.pdfgen import canvas

# PDF 문서 생성
pdf = canvas.Canvas("summary.pdf")

# PDF 페이지에 텍스트 추가
pdf.drawString(100, 750, "데이터 요약")

# PDF 저장
pdf.save()

데이터 시각화

이제 데이터를 시각화하여 PDF에 추가하는 방법을 알아보겠습니다. 예를 들어, “sales_data.csv”라는 파일에 있는 매출 데이터를 시각화하여 PDF에 추가하려고 합니다.

import pandas as pd
from reportlab.lib.pagesizes import letter
from reportlab.platypus import Table
from reportlab.lib import colors

# 데이터 불러오기
data = pd.read_csv("sales_data.csv")

# 데이터 시각화를 위한 테이블 생성
table_data = [data.columns.tolist()]
table_data.extend(data.values.tolist())

# 테이블 스타일 설정
table_style = [
    ("BACKGROUND", (0, 0), (-1, 0), colors.grey),
    ("TEXTCOLOR", (0, 0), (-1, 0), colors.whitesmoke),
    ("ALIGN", (0, 0), (-1, -1), "CENTER"),
    ("FONTNAME", (0, 0), (-1, 0), "Helvetica-Bold"),
    ("FONTSIZE", (0, 0), (-1, 0), 14),
    ("BOTTOMPADDING", (0, 0), (-1, 0), 12),
    ("BACKGROUND", (0, 1), (-1, -1), colors.beige),
    ("GRID", (0, 0), (-1, -1), 1, colors.black),
]

# PDF 문서 생성
pdf = canvas.Canvas("summary.pdf", pagesize=letter)

# 테이블 추가
table = Table(table_data)
table.setStyle(table_style)
table.wrapOn(pdf, 500, 500)
table.drawOn(pdf, 50, 600)

# PDF 저장
pdf.save()

위의 코드를 실행하면 “sales_data.csv” 파일에 있는 데이터가 테이블 형태로 추가된 PDF 파일이 생성됩니다. 시각적으로 데이터를 쉽게 파악할 수 있습니다.

결론

ReportLab을 사용하면 파이썬을 통해 데이터를 요약하고 시각화하여 PDF에 저장할 수 있습니다. 이것은 데이터 분석 및 보고서 작성에 매우 유용한 도구입니다. 다양한 방법을 활용하여 데이터 요약을 해보세요!