对python生成业务报表的实例详解


Posted in Python onFebruary 03, 2019

本文介绍一个用python结合xlsxwriter自动生成业务报表的程序。这里的业务数据采用的是指定的值,真实情况下需要其他程序来接入数据。

# -*- 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],
  [189,188,195,193,198,1100,199],
  [201,200,198,175,170,198,195],
  [75,77,78,78,74,70,79],
  [188,85,87,190,93,188,184],
]

# 定义format格式对象
format=workbook.add_format()
# 定义format对象单元格边框加粗1像素
format.set_border(1)

format_title=workbook.add_format()
format_title.set_border(1)
# format_title对象单元格背景色为#cccccc
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', # 将周一到周日作为图标x轴
    'values':   '=Sheet1!$B$'+cur_row+':$H$'+cur_row, # 一周所有数据作为数据区域
    'line':    {'color': 'black'}, # 线条颜色定义为黑色
    'name': '=Sheet1!$A$'+cur_row, # 引用名称为图例
  })

for row in range(2, 7): # 数据以2-6行进行图表数据系列函数调用
  chart_series(str(row))

chart.set_table() # 设置x轴格式
chart.set_style(30) # 设置图表样式

# 设置图表大小
chart.set_size({'width': 577, 'height': 287})
# 设置图表上方标题
chart.set_title ({'name': u'业务流量周报图表'})
# 设置y轴标题
chart.set_y_axis({'name': 'Mb/s'})

# 在A8插入单元格图表
worksheet.insert_chart('A8', chart)
workbook.close()

显示结果如下:

对python生成业务报表的实例详解

以上这篇对python生成业务报表的实例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python输出各行命令详解
Feb 01 Python
Python 实现引用其他.py文件中的类和类的方法
Apr 29 Python
pycharm重置设置,恢复默认设置的方法
Oct 22 Python
Pythony运维入门之Socket网络编程详解
Apr 15 Python
Python中常用的高阶函数实例详解
Feb 21 Python
python绘制玫瑰的实现代码
Mar 02 Python
python3 使用openpyxl将mysql数据写入xlsx的操作
May 15 Python
浅谈Python中的模块
Jun 10 Python
基于python实现操作redis及消息队列
Aug 27 Python
Python self用法详解
Nov 28 Python
Pandas对每个分组应用apply函数的实现
Dec 13 Python
如何用python批量调整视频声音
Dec 22 Python
使用Python快速制作可视化报表的方法
Feb 03 #Python
python生成每日报表数据(Excel)并邮件发送的实例
Feb 03 #Python
Python告诉你木马程序的键盘记录原理
Feb 02 #Python
Python实现DDos攻击实例详解
Feb 02 #Python
Python实现SQL注入检测插件实例代码
Feb 02 #Python
Django uwsgi Nginx 的生产环境部署详解
Feb 02 #Python
python实现一个简单的udp通信的示例代码
Feb 01 #Python
You might like
PHP安装攻略:常见问题解答(二)
2006/10/09 PHP
我的群发邮件程序
2006/10/09 PHP
php array_intersect()函数使用代码
2009/01/14 PHP
PHP实现取得HTTP请求的原文
2014/08/18 PHP
php获取文章上一页与下一页的方法
2014/12/01 PHP
PHP实现简单ajax Loading加载功能示例
2016/12/28 PHP
Thinkphp事务操作实例(推荐)
2017/04/01 PHP
php通过header发送自定义数据方法
2018/01/18 PHP
PHP实现微信红包金额拆分试玩的算法示例
2018/04/07 PHP
使用jquery实现图文切换效果另加特效
2013/01/20 Javascript
javascript中局部变量和全局变量的区别详解
2015/02/27 Javascript
js替换字符串中所有指定的字符(实现代码)
2016/08/17 Javascript
jquery实现的table排序功能示例
2017/03/10 Javascript
解决html-jquery/js引用外部图片时遇到看不了或出现403的问题
2017/09/22 jQuery
js中url对象化管理分析
2017/12/29 Javascript
详解vue移动端日期选择组件
2018/02/22 Javascript
vue的keep-alive中使用EventBus的方法
2019/04/23 Javascript
从零撸一个pc端vue的ui组件库( 计数器组件 )
2019/08/08 Javascript
JS实现无限轮播无倒退效果
2020/09/21 Javascript
[04:22]DOTA2大事件之护国神翼
2020/08/14 DOTA
python中logging库的使用总结
2017/10/18 Python
django manage.py扩展自定义命令方法
2018/05/27 Python
Python两个字典键同值相加的几种方法
2019/03/05 Python
python+opencv实现摄像头调用的方法
2019/06/22 Python
pandas分组聚合详解
2020/04/10 Python
python实现发送邮件
2021/03/02 Python
CSS3中Animation动画属性用法详解
2016/07/04 HTML / CSS
用HTML5的canvas实现一个炫酷时钟效果
2016/05/20 HTML / CSS
医学生个人求职信范文
2013/09/24 职场文书
上班离岗检讨书
2014/01/27 职场文书
大学辅导员事迹材料
2014/02/05 职场文书
客户接待方案
2014/02/26 职场文书
党的群众路线教育实践活动个人整改方案
2014/09/21 职场文书
考博导师推荐信范文
2015/03/27 职场文书
舞蹈社团活动总结
2015/05/07 职场文书
会计主管竞聘书
2015/09/15 职场文书