728x90
반응형
7. 차트(Chart) 삽입
필요한 라이브러리
from openpyxl import load_workbook
from openpyxl.chart import BarChart, LineChart, Reference
테스트 파일
wb = load_workbook("test.xlsx")
ws = wb.active
Bar 차트
# B2:C11 까지의 데이터를 차트로 생성
bar_value = Reference(ws, min_row=2, max_row=11, min_col=2, max_col=3)
bar_chart = BarChart() # 차트 종류 설정 ( Bar, Line, Pie, ... )
bar_chart.add_data(bar_value)
ws.add_chart(bar_chart, "E1") # 차트 넣을 위치 정의
- Reference() : worksheet에서 차트 데이터로 사용할 영역을 정한다.
- BarChart() : Bar Chart 객체를 생성한다.
- bar_chart.add_data(bar_value) : Bar Chart 객체에 Reference 데이터를 추가한다.
- add_chart(차트 종류, "차트 삽입 위치") : 차트를 해당 영역에 삽입한다.
Line 차트
# B1:C11 까지의 데이터를 차트로 생성
line_value = Reference(ws, min_row=1, max_row=11, min_col=2, max_col=3)
line_chart = LineChart() # 차트 종류 설정 ( Bar, Line, Pie, ... )
line_chart.add_data(line_value, titles_from_data=True) # 계열 > 영어, 수학 (제목에서 가져옴)
line_chart.title = "성적표" # 제목
line_chart.style = 20 # 미리 정의된 스타일을 적용, 사용자가 개별로 지정 가능
line_chart.y_axis.title = "점수" # Y축의 제목
line_chart.x_axis.title = "번호" # X축의 제목
ws.add_chart(line_chart, "E1") # 차트 넣을 위치 정의
- Reference() : worksheet에서 차트 데이터로 사용할 영역을 정한다. 이번에는 제목까지 포함.
- LineChart() : Line Chart 객체를 생성한다.
- line_chart.add_data(line_value, title_from_data=True) : Line Chart 객체에 Reference 데이터를 추가하고, 제목을 계열로 설정한다(title_from_data=True).
- line_chart.title = 제목 설정
- line_chart style = 스타일 설정(미리 정의된 스타일, 엑셀에서 확인)
- line_chart.y_axis.title : Y축 제목
- line_chart.x_axis.title : X축 제목
Chart 참고할 사이트
https://openpyxl.readthedocs.io/en/stable/charts/introduction.html
위 사이트에서 필요한 차트 생성 시에 참고하면 도움이 될 것 같다.
728x90
반응형
'Software > Python' 카테고리의 다른 글
[Tkinter] 파이썬으로 GUI 만들기 - Label, Button (1) | 2024.01.30 |
---|---|
[Tkinter] 파이썬으로 GUI 만들기 - Window 창 띄우기 (1) | 2024.01.30 |
[Openpyxl] 6. 이미지 삽입 (0) | 2024.01.28 |
[Openpyxl] 5. 찾기, 수정, 삽입, 삭제, 이동 (0) | 2024.01.28 |
[Openpyxl] 4. Cell 서식 (0) | 2024.01.28 |
댓글