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 相关文章推荐
PHP魔术方法__ISSET、__UNSET使用实例
Nov 25 Python
Djang中静态文件配置方法
Jul 30 Python
Python3使用turtle绘制超立方体图形示例
Jun 19 Python
pandas把所有大于0的数设置为1的方法
Jan 26 Python
pycharm设置鼠标悬停查看方法设置
Jul 29 Python
Python:slice与indices的用法
Nov 25 Python
Pytorch在dataloader类中设置shuffle的随机数种子方式
Jan 14 Python
python应用Axes3D绘图(批量梯度下降算法)
Mar 25 Python
python datetime时间格式的相互转换问题
Jun 11 Python
详解Python 循环嵌套
Jul 09 Python
Python map及filter函数使用方法解析
Aug 06 Python
一文搞懂python异常处理、模块与包
Jun 26 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
PHP数组对比函数,存在交集则返回真,否则返回假
2011/02/03 PHP
Javascript与PHP验证用户输入URL地址是否正确
2014/10/09 PHP
thinkphp查询,3.X 5.0方法(亲试可行)
2017/06/17 PHP
PHP用continue跳过本次循环中剩余代码的注意点
2017/06/27 PHP
yii2安装详细流程
2018/05/23 PHP
PHP基于mcript扩展实现对称加密功能示例
2019/02/21 PHP
Add Formatted Text to a Word Document
2007/06/15 Javascript
ExtJs扩展之GroupPropertyGrid代码
2010/03/05 Javascript
在firefox和Chrome下关闭浏览器窗口无效的解决方法
2014/01/16 Javascript
从JQuery源码分析JavaScript函数的apply方法与call方法
2014/09/25 Javascript
jquery序列化方法实例分析
2015/06/10 Javascript
jquery在ie7下选择器的问题导致append失效的解决方法
2016/01/10 Javascript
基于jQuery实现带动画效果超炫酷的弹出对话框(附源码下载)
2016/02/22 Javascript
jquery对dom节点的操作【推荐】
2016/04/15 Javascript
深入理解JQuery中的事件与动画
2016/05/18 Javascript
jQuery复制节点用法示例(clone方法)
2016/09/08 Javascript
jQuery实现鼠标滑过预览图片大图效果的方法
2017/04/26 jQuery
vue实现移动端图片裁剪上传功能
2020/08/18 Javascript
详解如何在React组件“外”使用父组件的Props
2018/01/12 Javascript
微信小程序框架wepy之动态控制类名
2018/09/14 Javascript
jQuery点击页面其他部分隐藏下拉菜单功能
2018/11/27 jQuery
详解js中let与var声明变量的区别
2020/04/05 Javascript
Node.js爬虫如何获取天气和每日问候详解
2019/08/26 Javascript
[03:51]吞吞映像 每周精彩击杀top10第二弹
2014/06/25 DOTA
python统计一个文本中重复行数的方法
2014/11/19 Python
Python中使用ElementTree解析XML示例
2015/06/02 Python
python用10行代码实现对黄色图片的检测功能
2015/08/10 Python
python下10个简单实例代码
2017/11/15 Python
python判断变量是否为列表的方法
2020/09/17 Python
python自动生成sql语句的脚本
2021/02/24 Python
逻辑链路控制协议
2016/10/01 面试题
幼儿园教师教学反思
2014/02/06 职场文书
《愚公移山》教学反思
2014/02/20 职场文书
毕业纪念册寄语大全
2015/02/26 职场文书
2016教师廉洁从教心得体会
2016/01/13 职场文书
《惊弓之鸟》教学反思
2016/02/20 职场文书