python分析excel基础数据生成报表(Python实现定制自动化业务流量报表周报功能XlsxWriter模块)
类别:脚本大全 浏览量:2813
时间:2022-01-14 02:22:03 python分析excel基础数据生成报表
Python实现定制自动化业务流量报表周报功能XlsxWriter模块本文实例讲述了python实现定制自动化业务流量报表周报功能。分享给大家供大家参考,具体如下:
一 点睛
本次实践通过定制网站5个频道的流量报表周报,通过xlsxwriter 模块将流量数据写入excel文档,同时自动计算各频道周平均流量,再生成数据图表。具体是通过workbook.add_chart({'type':'column'})
方 法指定图表类型为柱形,使用write_row
、write_column
方法分别以行、 列方式写入数据,使用add_format()
方法定制表头、表体的显示风格,使用add_series()
方法将数据添加到图表,同时使用 chart.set_size、set_title、set_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程序设计有所帮助。
原文链接:https://blog.csdn.net/chengqiuming/article/details/87729800
您可能感兴趣
- python 提取微信消息(python实现文件助手中查看微信撤回消息)
- python时间类的实现(Python日期时间Time模块实例详解)
- python3.5 tkinter教程(解决python3.5 正常安装 却不能直接使用Tkinter包的问题)
- python基础编程函数参数(详解Python 函数如何重载?)
- python函数基本操作(Python定义函数功能与用法实例详解)
- python plot绘图(python使用Plotly绘图工具绘制气泡图)
- python实例教程(Python魔法方法详解)
- python提取json数据(Python爬取数据保存为Json格式的代码示例)
- python中随机生成不重复随机数(python 在指定范围内随机生成不重复的n个数实例)
- python数组与矩阵转换(python 读取文件并把矩阵转成numpy的两种方法)
- python图片模板匹配(python实现简单图片物体标注工具)
- python排序的三种方法(Python实现插入排序和选择排序的方法)
- python处理所有异常(Python异常处理知识点总结)
- python内置函数使用方法(Python神奇的内置函数locals的实例讲解)
- pythonflask编写接口(Python Flask框架模板操作实例分析)
- python零基础实战项目(十个Python练手的实战项目,学会这些Python就基本没问题了推荐)
- 一道高中题-求杯子的高度(一道高中题-求杯子的高度)
- 网坛停摆三巨头亏损惨重,费德勒跌幅88 纳达少赚2400万(网坛停摆三巨头亏损惨重)
- Beyond 版本《无人深空》主线任务攻略 阿特拉斯之道(版本无人深空主线任务攻略)
- 全球科技界最有钱大佬TOP 15 你知道几位(全球科技界最有钱大佬TOP)
- 2主力后腰缺阵 泰山队奇兵有望获重用,赛季0出场,迎来中超首秀(泰山队奇兵有望获重用)
- 三分71 生死战爆发 篮网旧将丁威迪今天成奇兵,助队赢球(三分71生死战爆发)
热门推荐
- extjs xtype的使用
- rabbitmq客户端内存占用(mysql-canal-rabbitmq 安装部署超详细教程)
- python中random库的用法(Python minidom模块用法示例DOM写入和解析XML)
- laravel接口响应时间(laravel请求参数校验方法)
- python定时任务脚本(对Python定时任务的启动和停止方法详解)
- sqlifnull如何使用(在 SQL 语句中处理 NULL 值的方法)
- php7处理方案(PHP7 安装event扩展的实现方法)
- java怎么调用支付宝的扫码支付(python实现银联支付和支付宝支付接入)
- mysql高级概念(MySQL 自定义变量的概念及特点)
- dedecms调用原始图(DEDECMS点击图片进入下一页功能实现教程)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9