Python中XlsxWriter模块简介与用法分析


Posted in Python onApril 24, 2018

本文实例讲述了Python中XlsxWriter模块用法。分享给大家供大家参考,具体如下:

XlsxWriter,可以生成excel文件(xlsx的哦),然后很重要的一点就是,它不仅仅只是生成数据,还能插入直方图,饼图….,使用条件格式,合并单元格等等这些操作。话不多说,先上图,在上例子哈!

以直方图为例子哈

生成文体效果如下

Python中XlsxWriter模块简介与用法分析

代码解析

# -*- coding: cp936 -*-
import xlsxwriter
workbook = xlsxwriter.Workbook('chart_data_table.xlsx') #可以生成.xls文件但是会报错
worksheet = workbook.add_worksheet('Sheet1') #工作页
#准备测试数据
bold = workbook.add_format({'bold': 1})
headings = ['Number', 'Batch 1', 'Batch 2']
data = [
  [2, 3, 4, 5, 6, 7],
  [10, 40, 50, 20, 10, 50],
  [30, 60, 70, 50, 40, 30],
]
#插入数据
worksheet.write_row('A1', headings, bold)#行插入操作 注意这里的'A1'
worksheet.write_column('A2', data[0])#列插入操作 注意这里的'A2'
worksheet.write_column('B2', data[1])
worksheet.write_column('C2', data[2])
#插入直方图1
chart1 = workbook.add_chart({'type': 'column'})#选择 直方图 'column'
chart1.add_series({
  'name':    '=Sheet1!$B$1',
  'categories': '=Sheet1!$A$2:$A$7',#X轴值(实在不知道怎么叫,就用XY轴表示)
  'values':   '=Sheet1!$B$2:$B$7',#Y轴值
  'data_labels': {'value': True}#显示数字,就是直方图上面的数字,默认不显示
})
#注意上面写法 '=Sheet1!$B$2:$B$7' Sheet1是指定工作页, $A$2:$A$7是从A2到A7数据,熟悉excel朋友应该一眼就能认得出来
#插入直方图2
chart1.add_series({
  'name':    ['Sheet1', 0, 2],
  'categories': ['Sheet1', 1, 0, 6, 0],
  'values':   ['Sheet1', 1, 2, 6, 2],
  'data_labels': {'value': True}
})
chart1.set_title({'name': 'Chart with Data Table'}) #直方图标题
chart1.set_x_axis({'name': 'Test number'}) #X轴描述
chart1.set_y_axis({'name': 'Sample length (mm)'})#有轴描述
chart1.set_table()
chart1.set_style(3)#直方图类型
worksheet.insert_chart('D2', chart1, {'x_offset': 25, 'y_offset': 10}) #直方图插入到 D2位置
workbook.close()

最后附上

XlsxWriter的下载链接

XlsxWriter的在线开发文档

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

Python 相关文章推荐
Python中join和split用法实例
Apr 14 Python
在Python的Django框架中获取单个对象数据的简单方法
Jul 17 Python
Python生成随机数组的方法小结
Apr 15 Python
python2.7 json 转换日期的处理的示例
Mar 07 Python
tensorflow学习教程之文本分类详析
Aug 07 Python
解决Pycharm出现的部分快捷键无效问题
Oct 22 Python
python2和python3在处理字符串上的区别详解
May 29 Python
python自制包并用pip免提交到pypi仅安装到本机【推荐】
Jun 03 Python
使用python获取(宜宾市地震信息)地震信息
Jun 20 Python
python实现多线程端口扫描
Aug 31 Python
Python使用docx模块实现刷题功能代码
Feb 13 Python
Appium+Python实现简单的自动化登录测试的实现
Jan 26 Python
Python 实现删除某路径下文件及文件夹的实例讲解
Apr 24 #Python
python3+PyQt5实现文档打印功能
Apr 24 #Python
Python结合ImageMagick实现多张图片合并为一个pdf文件的方法
Apr 24 #Python
python3+PyQt5实现柱状图
Apr 24 #Python
python3+PyQt5自定义视图详解
Apr 24 #Python
python自动重试第三方包retrying模块的方法
Apr 24 #Python
python3+PyQt5泛型委托详解
Apr 24 #Python
You might like
浅析php中常量,变量的作用域和生存周期
2013/08/10 PHP
用PHP和Shell写Hadoop的MapReduce程序
2014/04/15 PHP
ThinkPHP实现二级循环读取的方法
2014/11/03 PHP
php+mysql实现用户注册登陆的方法
2015/01/03 PHP
PHP实现图片的等比缩放和Logo水印功能示例
2017/05/04 PHP
TP5(thinkPHP5框架)实现显示错误信息及行号功能的方法
2019/06/03 PHP
JavaScript 学习笔记(九)call和apply方法
2010/01/11 Javascript
JS解决url传值出现中文乱码的另类办法
2013/04/08 Javascript
Jquery Ajax xmlhttp请求成功问题
2015/02/04 Javascript
jQuery中trigger()与bind()用法分析
2015/12/18 Javascript
VueJS如何引入css或者less文件的一些坑
2017/04/25 Javascript
关于Google发布的JavaScript代码规范你要知道哪些
2018/04/04 Javascript
对vuejs的v-for遍历、v-bind动态改变值、v-if进行判断的实例讲解
2018/08/27 Javascript
bootstrap table实现合并单元格效果
2018/12/24 Javascript
监听element-ui table滚动事件的方法
2019/03/26 Javascript
JavaScript 斐波那契数列 倒序输出 输出100以内的质数代码实例
2019/09/11 Javascript
原生js实现的观察者和订阅者模式简单示例
2020/04/18 Javascript
[52:39]完美世界DOTA2联赛PWL S3 CPG vs Forest 第一场 12.16
2020/12/17 DOTA
windows下wxPython开发环境安装与配置方法
2014/06/28 Python
Python使用cx_Oracle模块将oracle中数据导出到csv文件的方法
2015/05/16 Python
Python2.x与Python3.x的区别
2016/01/14 Python
python3.5 + PyQt5 +Eric6 实现的一个计算器代码
2017/03/11 Python
Python中偏函数用法示例
2018/06/07 Python
python实现图片识别汽车功能
2018/11/30 Python
在Python中,不用while和for循环遍历列表的实例
2019/02/20 Python
PyCharm更改字体和界面样式的方法步骤
2019/09/27 Python
使用TFRecord存取多个数据案例
2020/02/17 Python
python如何保存文本文件
2020/06/07 Python
详解Css3新特性应用之过渡与动画
2017/01/10 HTML / CSS
AmazeUI 单选框和多选框的实现示例
2020/08/18 HTML / CSS
《找不到快乐的波斯猫》教学反思
2014/02/24 职场文书
个人投资计划书
2014/05/01 职场文书
作风转变年心得体会
2014/10/22 职场文书
工程款申请报告
2015/05/15 职场文书
借款民事起诉状范文
2015/05/19 职场文书
Python中的min及返回最小值索引的操作
2021/05/10 Python