Python实现定制自动化业务流量报表周报功能【XlsxWriter模块】


Posted in Python onMarch 11, 2019

本文实例讲述了Python实现定制自动化业务流量报表周报功能。分享给大家供大家参考,具体如下:

一 点睛

本次实践通过定制网站5个频道的流量报表周报,通过XlsxWriter 模块将流量数据写入Excel文档,同时自动计算各频道周平均流量,再生成数据图表。具体是通过workbook.add_chart({'type':'column'})方 法指定图表类型为柱形,使用write_rowwrite_column方法分别以行、 列方式写入数据,使用add_format()方法定制表头、表体的显示风格,使用add_series()方法将数据添加到图表,同时使用 chart.set_sizeset_titleset_y_axis设置图表的大小及标题属性,最后通 过insert_chart方法将图表插入工作表中。

二 代码

#coding: utf-8
import xlsxwriter
workbook = xlsxwriter.Workbook('chart.xlsx')
worksheet = workbook.add_worksheet()
chart = workbook.add_chart({'type': 'column'})
title = [u'业务名称',u'星期一',u'星期二',u'星期三',u'星期四',u'星期五',u'星期六',u'星期日',u'平均流量']
buname= [u'业务官网',u'新闻中心',u'购物频道',u'体育频道',u'亲子频道']
data = [
  [150,152,158,149,155,145,148],
  [89,88,95,93,98,100,99],
  [201,200,198,175,170,198,195],
  [75,77,78,78,74,70,79],
  [88,85,87,90,93,88,84],
]
format=workbook.add_format()
format.set_border(1)
format_title=workbook.add_format()
format_title.set_border(1)
format_title.set_bg_color('#cccccc')
format_title.set_align('center')
format_title.set_bold()
format_ave=workbook.add_format()
format_ave.set_border(1)
format_ave.set_num_format('0.00')
worksheet.write_row('A1',title,format_title)
worksheet.write_column('A2', buname,format)
worksheet.write_row('B2', data[0],format)
worksheet.write_row('B3', data[1],format)
worksheet.write_row('B4', data[2],format)
worksheet.write_row('B5', data[3],format)
worksheet.write_row('B6', data[4],format)
def chart_series(cur_row):
  worksheet.write_formula('I'+cur_row, \
   '=AVERAGE(B'+cur_row+':H'+cur_row+')',format_ave)
  chart.add_series({
    'categories': '=Sheet1!$B$1:$H$1',
    'values':   '=Sheet1!$B$'+cur_row+':$H$'+cur_row,
    'line':    {'color': 'black'},
    'name':  '=Sheet1!$A$'+cur_row,
  })
for row in range(2, 7):
  chart_series(str(row))
#chart.set_table()
#chart.set_style(30)
chart.set_size({'width': 577, 'height': 287})
chart.set_title ({'name': u'业务流量周报图表'})
chart.set_y_axis({'name': 'Mb/s'})
worksheet.insert_chart('A8', chart)
workbook.close()

三 显示结果

Python实现定制自动化业务流量报表周报功能【XlsxWriter模块】

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
闭包在python中的应用之translate和maketrans用法详解
Aug 27 Python
Python中实现最小二乘法思路及实现代码
Jan 04 Python
Windows下将Python文件打包成.EXE可执行文件的方法
Aug 03 Python
PySide和PyQt加载ui文件的两种方法
Feb 27 Python
Python函数装饰器原理与用法详解
Aug 16 Python
python pycharm的安装及其使用
Oct 11 Python
Python性能分析工具Profile使用实例
Nov 19 Python
在Python中使用turtle绘制多个同心圆示例
Nov 23 Python
python内打印变量之%和f的实例
Feb 19 Python
Python基于Twilio及腾讯云实现国际国内短信接口
Jun 18 Python
Python3实现英文字母转换哥特式字体实例代码
Sep 01 Python
利用python进行文件操作
Dec 04 Python
浅谈Python中的可迭代对象、迭代器、For循环工作机制、生成器
Mar 11 #Python
python使用selenium实现批量文件下载
Mar 11 #Python
利用Python实现微信找房机器人实例教程
Mar 10 #Python
谈谈Python中的while循环语句
Mar 10 #Python
15行Python代码实现网易云热门歌单实例教程
Mar 10 #Python
Python如何爬取实时变化的WebSocket数据的方法
Mar 09 #Python
浅谈python的深浅拷贝以及fromkeys的用法
Mar 08 #Python
You might like
php5编程中的异常处理详细方法介绍
2008/07/29 PHP
php实现自动获取生成文章主题关键词功能的深入分析
2013/06/03 PHP
PHP读取文件内容后清空文件示例代码
2014/03/18 PHP
php集成套件服务器xampp安装使用教程(适合第一次玩PHP的新手)
2015/06/03 PHP
JQuery Easyui Tree的oncheck事件实现代码
2010/05/28 Javascript
js读取cookie方法总结
2014/10/31 Javascript
angularjs指令中的compile与link函数详解
2014/12/06 Javascript
jQuery处理图片加载失败的常用方法
2015/06/08 Javascript
jQuery+HTML5加入购物车代码分享
2020/10/29 Javascript
jQuery中的AjaxSubmit使用讲解
2016/09/25 Javascript
用最简单的方法判断JavaScript中this的指向(推荐)
2017/09/04 Javascript
BootStrap给table表格的每一行添加一个按钮事件
2017/09/07 Javascript
ES6学习教程之对象字面量详解
2017/10/09 Javascript
js canvas实现写字动画效果
2018/11/30 Javascript
layui固定下拉框的显示条数(有滚动条)的方法
2019/09/10 Javascript
Python正则表达式介绍
2012/08/06 Python
python基础教程之缩进介绍
2014/08/29 Python
在Django中编写模版节点及注册标签的方法
2015/07/20 Python
一个基于flask的web应用诞生 用户注册功能开发(5)
2017/04/11 Python
Python中函数及默认参数的定义与调用操作实例分析
2017/07/25 Python
python的Tqdm模块的使用
2018/01/10 Python
pandas.DataFrame 根据条件新建列并赋值的方法
2018/04/08 Python
Django框架实现的普通登录案例【使用POST方法】
2019/05/15 Python
对python 中re.sub,replace(),strip()的区别详解
2019/07/22 Python
python numpy库linspace相同间隔采样的实现
2020/02/25 Python
python数据库操作mysql:pymysql、sqlalchemy常见用法详解
2020/03/30 Python
Python matplotlib绘制图形实例(包括点,曲线,注释和箭头)
2020/04/17 Python
python自动从arxiv下载paper的示例代码
2020/12/05 Python
阿联酋最好的手机、电子产品和家用电器网上商店:Eros Digital Home
2020/08/09 全球购物
幼儿园春季开学寄语
2014/04/03 职场文书
家长会学生演讲稿
2014/04/26 职场文书
老公给老婆的保证书
2014/04/28 职场文书
工作说明书范文
2014/05/07 职场文书
工作期间打牌检讨书范文
2014/11/20 职场文书
郭明义观后感
2015/06/08 职场文书
自荐信范文
2019/05/20 职场文书