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中threading模块join函数用法实例分析
Jun 04 Python
Python中数组,列表:冒号的灵活用法介绍(np数组,列表倒序)
Apr 18 Python
Python Requests库基本用法示例
Aug 20 Python
python3.6利用pyinstall打包py为exe的操作实例
Oct 31 Python
对python借助百度云API对评论进行观点抽取的方法详解
Feb 21 Python
Django中提供的6种缓存方式详解
Aug 05 Python
使用python的turtle绘画滑稽脸实例
Nov 21 Python
通过实例解析python创建进程常用方法
Jun 19 Python
Django自定义YamlField实现过程解析
Nov 11 Python
python 30行代码实现蚂蚁森林自动偷能量
Feb 08 Python
OpenCV-Python实现轮廓拟合
Jun 08 Python
再谈python_tkinter弹出对话框创建
Mar 20 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输出控制功能在简繁体转换中的应用
2006/10/09 PHP
如何使用PHP往windows中添加用户
2006/12/06 PHP
php+mysql事务rollback&commit示例
2010/02/08 PHP
php switch语句多个值匹配同一代码块的实现
2014/03/03 PHP
php创建无限级树型菜单
2015/11/05 PHP
Yii2基于Ajax自动获取表单数据的方法
2016/08/10 PHP
jQuery使用手册之三 CSS操作
2007/03/24 Javascript
“不能执行已释放的Script代码”错误的原因及解决办法
2007/09/09 Javascript
不能再简单的无闪刷新验证码原理很简单
2007/11/05 Javascript
jQuery帮助之筛选查找 children([expr])
2011/01/31 Javascript
jquery原创弹出层折叠效果点击折叠弹出一个层
2014/03/12 Javascript
使用命令对象代替switch语句的写法示例
2015/02/28 Javascript
浅谈setTimeout 与 setInterval
2015/06/23 Javascript
浅谈js对象的创建和对6种继承模式的理解和遐想
2016/10/16 Javascript
js基础之DOM中元素对象的属性方法详解
2016/10/28 Javascript
如何将你的AngularJS1.x应用迁移至React的方法
2018/02/01 Javascript
原生js实现二级联动菜单
2019/11/27 Javascript
jquery制作的移动端购物车效果完整示例
2020/02/24 jQuery
React 条件渲染最佳实践小结(7种)
2020/09/27 Javascript
Vue+penlayers实现多边形绘制及展示
2020/12/24 Vue.js
Python中的异常处理相关语句基础学习笔记
2016/07/11 Python
Python使用剪切板的方法
2017/06/06 Python
Django中反向生成models.py的实例讲解
2018/05/30 Python
对python操作kafka写入json数据的简单demo分享
2018/12/27 Python
Python2 Selenium元素定位的实现(8种)
2019/02/25 Python
PyCharm更改字体和界面样式的方法步骤
2019/09/27 Python
opencv 图像礼帽和图像黑帽的实现
2020/07/07 Python
python元组拆包实现方法
2021/02/28 Python
你可能不熟练的十个前端HTML5经典面试题
2018/07/03 HTML / CSS
ghd法国官方网站:英国最受欢迎的美发工具品牌
2019/04/18 全球购物
WebSphere面试题:在WebSphere里面如何部署一个应用
2015/08/02 面试题
英语生日邀请函
2014/01/23 职场文书
身边的榜样活动方案
2014/08/20 职场文书
成都人事代理协议书
2014/10/25 职场文书
优秀教师申报材料
2014/12/16 职场文书
2015年人事科工作总结
2015/04/28 职场文书