Post

Excel 시각화

Excel 시각화

조건부서식 - 막대그래프 추가하기

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import openpyxl
from openpyxl.formatting.rule import DataBarRule

wb = openpyxl.load_workbook("result.xlsx")

for sheet_name in wb.sheetnames:
    if sheet_name.isdigit():  # 문자열이 숫자로만 이루어져 있는지 확인
        ws = wb[sheet_name]
        
        # 막대그래프를 추가하고 싶은 column 
        col = 'A'
        min_row = 2
        max_row = ws.max_row
        
        # 조건부 서식: 데이터 막대 추가
        data_bar = DataBarRule(
            start_type='min',
            end_type='max',
            color="63BE7B"  # 초록색
        )
        ws.conditional_formatting.add(f"{col}{min_row}:{col}{max_row}", data_bar)

wb.save("result.xlsx")




column 너비 고정하기

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from openpyxl import load_workbook

# 픽셀 → 엑셀 문자단위 변환 함수
def px_to_width(px):
    return (px - 5) / 7

# 열별 픽셀 설정
widths_px = {
    'A': 52,
    'B': 39,
    'C': 101,
    'D': 86
}

# 엑셀 불러오기
file = "result.xlsx"
wb = load_workbook(file)

wb._sheets.sort(key=lambda ws: ws.title, reverse=True)
for sheet in wb.sheetnames:
    if sheet.isdigit():
        ws = wb[sheet]  # 시트 객체 가져오기
        # 열 너비 설정
        for col, px in widths_px.items():
            ws.column_dimensions[col].width = px_to_width(px)

# 변경사항 저장
wb.save("result.xlsx")
This post is licensed under CC BY 4.0 by the author.

© haedal-uni. Some rights reserved.

Using the Chirpy theme for Jekyll.