Guidelines

νŒŒμ›Œν¬μΈνŠΈλ‘œ ν”„λ‘œμ νŠΈ μƒνƒœλ₯Ό μ‹œκ°ν™”ν•˜κΈ°

이제 νŒŒμ΄μ¬μ„ μ΄μš©ν•΄ μ—‘μ…€μ—μ„œ 뢈러온 ν”„λ‘œμ νŠΈ μƒνƒœ 데이터λ₯Ό νŒŒμ›Œν¬μΈνŠΈ μŠ¬λΌμ΄λ“œλ‘œ μ‹œκ°ν™”ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€.

ν”„λ‘œμ νŠΈ 이름진척도 (%)μ‹œμž‘μΌμ’…λ£ŒμΌλ¬Έμ œμ 
μ›Ήμ‚¬μ΄νŠΈ 리뉴얼802024-07-012024-12-31개발 지연
λ§ˆμΌ€νŒ… 캠페인502024-08-152024-11-15μ—†μŒ
μ‹ κ·œ μ œν’ˆ μΆœμ‹œ302024-09-012025-01-31생산 문제 λ°œμƒ

python-pptxλ₯Ό μ‚¬μš©ν•΄ μ—‘μ…€ 데이터λ₯Ό ν‘œλ‘œ λ³€ν™˜ν•˜κ³ , 각 ν”„λ‘œμ νŠΈμ˜ 진척도λ₯Ό λ§‰λŒ€ κ·Έλž˜ν”„λ‘œ μ‹œκ°ν™”ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€.


μ£Όμš” μ½”λ“œ μ„€λͺ…

μ‹€μŠ΅ μ½”λ“œλŠ” 크게 λ‹€μŒκ³Ό 같은 μˆœμ„œλ‘œ μ§„ν–‰λ©λ‹ˆλ‹€.


1. ν‘œ μœ„μΉ˜ 및 크기 μ •μ˜

Inch λ‹¨μœ„λ‘œ ν‘œ μœ„μΉ˜ 및 크기 μ •μ˜
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λŠ” μ„Έλ‘œ λ§‰λŒ€ν˜• 차트λ₯Ό μ˜λ―Έν•©λ‹ˆλ‹€.

Guidelines

AI Tutor

Publish

Design

Upload

Notes

Favorites

Help

Code Editor

Run
Generate

Execution Result

Input/Result

The document is empty.

Try running the code.