一、前言
通过使用Python的openpyxl库,来操作excel单元格,生成图表,本文是生成饼图的程序,其他图表比较类似,具体的调用相应的的图标库函数即可。把学习的过程分享给大家。大佬勿喷!
二、程序展示
1、生成测试用的数据
import openpyxl
from openpyxl.chart import pie_chart, Reference,series
from openpyxl.chart.label import DataLabelList
wb = openpyxl.Workbook() #创建新的工作簿
sheet1 = wb.active #打开sheet页
data = [ #准备测试用的数据
['成绩区间', '占比'],
['90-100',20],
['80-90',76],
['60-80',3],
['<60',1]
]
for row in data: #写入sheet页中
sheet1.append(row)
2、生成图表
chart = pie_chart.PieChart() #创建饼图
chart.title = "成绩区间分布饼图" #饼图标题
chart.style = 10 #1-48可选
chart.set_categories(Reference(sheet1, min_col=1, min_row=2, max_row=5)) #设置饼图属性
chart.dataLabels = DataLabelList(showVal=True) #显示数据标签
chart.add_data(Reference(sheet1, min_col=2, min_row=2, max_col=2, max_row=5), titles_from_data=False) #数据添加到饼图上
sheet1.add_chart(chart, "A6") #在A6这个地方开始显示图标
wb.save('F:\python_study\表格\mychtexcel.xlsx') #保存工作簿
生成效果如下图: