python自动化办公(3)——Excel一键创建图表

一些做运营的小伙伴门可能经常要在工作中制作非常多的图表,如果能够在不打开Excel文件的情况下就能一键生成想要的图表,是不是相当的节省时间呢?

今天我们就来学习如何用python快速创建图表,我们需要用到的是xlrd,xlwt这两个读取和操作Excel表格的python库,具体代码如下:

import xlwt,xlrd
path = r'D:\software\excel'
data = pd.read_excel(r'D:/software/excel/1.xlsx', sheet_name='Sheet1')
workbook = xlrd.open_workbook('D:/software/excel/1.xlsx')            # 打开文件
worksheet = workbook.sheet_by_index(0)              # 通过索引获取xls文件第0个sheet
chart = worksheet.add_chart({'type':'column'}) #创建一个图表对象
#定义图表数据系列函数
def chart_series(cur_row):
    chart.add_series({
        'categories':'=Sheet1!$B$1:$H$1', #图标数据标签(X轴)
'values':      '=Sheet1!$B$'+cur_row+':$H$'+cur_row, #数据区域
'name':'Sheet1!$A$'+cur_row,
   })
for row in range(2,7): #数据域以第2~6行进行图表数据系列函数调用
    chart_series(str(row))
chart.set_title({'name': u'销售业务周报报表'}) #设置图表(上方)大标题
chart.set_y_axis({'name': '件'}) #设置Y轴(左侧)小图标
worksheet.insert_chart('A9', chart) #在A9单元格插入图表
workbook.close() #关闭Excel文档

如果用上篇文章提到的os.listdir()函数,还可以遍历文件夹内所有文档,对文件内所有的Excel文件批量操作,大家可以去尝试一下。

你可能感兴趣的:(python自动化办公(3)——Excel一键创建图表)