1:xlsxwriter模块介绍

xlsxwriter模块主要用来生成excel表格(后缀名为.xlsx)文件,插入数据、插入图表等表格操作。写大文件,速度快且只占用很小的内存空间;

2: xlsxwriter模块安装

pip install xlsxwriter

3:xlsxwriter模块常用操作

3.1:创建工作簿,工作表

# encoding=gbkimport xlsxwriter # 创建工作簿workbook = xlsxwriter.Workbook('test.xlsx')#创建一个excel文件 # 创建工作表worksheet = workbook.add_worksheet('test-sheet1')#在文件中创建一个名为test-sheet1的sheet,不加名字默认为sheet1worksheet2 = workbook.add_worksheet()   #  Sheet2worksheet3 = workbook.add_worksheet('test-sheet2')worksheet4 = workbook.add_worksheet()  #  Sheet4 workbook.close()

3.2:设置单元格的值

3.2.1:给单个单元格赋值

# encoding=gbkimport xlsxwriter # 一:创建工作簿workbook = xlsxwriter.Workbook('test.xlsx')#创建一个excel文件 # 二:创建工作表worksheet1 = workbook.add_worksheet('test-sheet1')#在文件中创建一个名为test-sheet1的sheet,不加名字默认为sheet1worksheet2 = workbook.add_worksheet()   #  Sheet2worksheet3 = workbook.add_worksheet('test-sheet2')worksheet4 = workbook.add_worksheet()  #  Sheet4 # 三:设置单元格的值worksheet1.write('A1', 'hello123')  # 在A1单元格写上HELLOworksheet1.write('A2', '123测试456')  # 在B2上写上中文加粗 # 使用行列方式,下标从0开始worksheet1.write(2, 0, 100) #  第3行第1列(即A3) 写入100worksheet1.write(3, 0, 99.8)  #  第4行第1列(即A4) 写入99.8worksheet1.write(4, 0, '=SUM(A3:A4)')  # 写上excel公式  # 合并单元格worksheet1.merge_range(1,2,3,4,'合并01')worksheet1.merge_range('C6:E7','合并02')  # worksheet1.write_number:写入数字worksheet1.write_number(5, 0, 1001)  #   Int or float # worksheet1.write_blank:写入空格worksheet1.write_blank(6, 0,'xx')  # 不管第三个参数是什么,都写入空格# worksheet1.write_formula:写入公式worksheet1.write_formula(7, 0, '=SUM(A3:A4)') # worksheet1.write_datetime:写入时间格式from datetime import datetimedate_format = workbook.add_format({'num_format': 'yyyy-mm-dd H:M:S'})worksheet1.write_datetime(8, 0, datetime.today(),date_format ) # worksheet1.write_boolean:写入逻辑数据worksheet1.write_boolean(9, 0,False) # worksheet1.write_url:写入链接地址worksheet1.write_url(10, 0,'www.baidu.com') workbook.close()

3.2.2:给多个单元格赋值

# encoding=gbkimport xlsxwriter # 一:创建工作簿workbook = xlsxwriter.Workbook('test.xlsx')#创建一个excel文件 # 二:创建工作表worksheet1 = workbook.add_worksheet('test-sheet1')#在文件中创建一个名为test-sheet1的sheet,不加名字默认为sheet1# worksheet2 = workbook.add_worksheet()   #  Sheet2# worksheet3 = workbook.add_worksheet('test-sheet2')# worksheet4 = workbook.add_worksheet()  #  Sheet4 # # write_row 写入lst=['12','34','56','78']worksheet1.write_row(5, 0, lst)  # 把数据写到第6行的,从第1列开始到第4列上# # write_column 写入worksheet1.write_column(6, 0,lst) # 把数据写到第1列,从第7行开始到第10行上 workbook.close()

结果截图:

3.3:设置格式

3.3.1:设置单元格样式

# encoding=gbkimport xlsxwriter # 一:创建工作簿workbook = xlsxwriter.Workbook('test.xlsx')#创建一个excel文件 # 二:创建工作表worksheet1 = workbook.add_worksheet('test-sheet1')#在文件中创建一个名为test-sheet1的sheet,不加名字默认为sheet1# worksheet2 = workbook.add_worksheet()   #  Sheet2# worksheet3 = workbook.add_worksheet('test-sheet2')# worksheet4 = workbook.add_worksheet()  #  Sheet4  # 大部分样式如下:format = {    'font_size': 10,  # 字体大小    'bold': True,  # 是否粗体    # 'bg_color': '#101010',  # 表格背景颜色    'fg_color': '#00FF00',    'font_color': '#0000FF',  # 字体颜色    'align': 'center',  # 水平居中对齐    'valign': 'vcenter',  # 垂直居中对齐    # 'num_format': 'yyyy-mm-dd H:M:S',# 设置日期格式    # 后面参数是线条宽度    'border': 1, # 边框宽度    'top': 1,  # 上边框    'left': 1,  # 左边框    'right': 1,  # 右边框    'bottom': 1  # 底边框} style = workbook.add_format(format)   # 设置样式format是一个字典  # # write_row 写入lst=['12','34','56','78']worksheet1.write_row(5, 0, lst,style)  # 把数据写到第6行的,从第1列开始到第4列上# # write_column 写入worksheet1.write_column(6, 0,lst) # 把数据写到第1列,从第7行开始到第10行上 worksheet1.write('A1',200,style) worksheet1.write(2,0,900,style) workbook.close()

3.3.2:设置单元格行高,列宽

# encoding=gbkimport xlsxwriter # 一:创建工作簿workbook = xlsxwriter.Workbook('test.xlsx')#创建一个excel文件 # 二:创建工作表worksheet1 = workbook.add_worksheet('test-sheet1')#在文件中创建一个名为test-sheet1的sheet,不加名字默认为sheet1 # 设置行宽worksheet1.set_row(0,60) # 设置列宽worksheet1.set_column(1,2,30)worksheet1.set_column('D:F',40) workbook.close()

3.3.3:设置设置标签颜色

worksheet1.set_tab_color('#0000FF')

3.4:插入图片

# encoding=gbkimport xlsxwriter # 一:创建工作簿workbook = xlsxwriter.Workbook('test.xlsx')#创建一个excel文件 # 二:创建工作表worksheet1 = workbook.add_worksheet('test-sheet1')#在文件中创建一个名为test-sheet1的sheet,不加名字默认为sheet1 # # 设置行宽# worksheet1.set_row(0,60)# # 设置列宽# worksheet1.set_column(1,2,30)# worksheet1.set_column('D:F',40)# worksheet1.set_tab_color('#0000FF') worksheet1.insert_image('A3', '00.jpg', {'url': 'https://blog.csdn.net/'})workbook.close()

4:插入图表

4.1:chart类

chart类,实图表组件,支持包括面积、条形图、柱状图、折线图、散点图等,一个图表对象是通过Workbook的add_chart方法创建,通过{type, ‘图表类型’}字典来制定图表类型,常见的图表样式如下:

area:面积样式的图表
bar:条形图
column:柱状图
line:线条样式的图表
pie:饼形图
scatter:散点图
stock:股票样式的图表
radar:雷达样式的图表
示例如下:

# 1:创建chart对象chart = workbook.add_chart({'type':'line'})# 2:设置chart对象相关数据,属性# 3:然后通过Worksheet的insert_chart()方法插入到指定位置worksheet1.insert_chart('A3',chart,{'x_offset':25,'y_offset':10})   #放置图表位置

4.2:chart对象常用方法

4.2.1:add_series(options)方法

用于添加一个数据系列的图表,参数options为字典类型,用于设置图表系列选项的字典,示例如下:

 chart.add_series({      'categories': '=Sheet1!$A$1:$A$5',      'values': '=Sheet1!$B$1:$B$5',      'line': {'color': 'red'},  }) 

add_series的常用三个选项:
categories:设置图表类别标签范围;
values:设置图表数据范围;
line:设置图表线条属性,包括宽度、颜色等;

4.2.2:set_x_axis(options)方法 与 set_y_axis(options)方法

设置图表X轴选项,Y轴选项

chart.set_x_axis({'name': 'x name',                  'name_font': {'size': 14, 'bold': True} ,                  'num_font': {'italic': True}                  }) """name:设置x轴名称;name_font:设置x轴字体;num_font:设置x轴数字字体属性;"""

4.2.3:其他方法

# set_size(options)方法,用于设置图表大小,示例如下:chart.set_size({'width': 720, 'height': 576})# width:设置宽度;# height:设置高度; # set_title(options)方法,设置图表标题,示例如下:chart.set_title({'name': 'test'}) # set_style(style_id)方法,用于设置图表样式,style_id为不同数字代表不同样式chart.set_style(37) # set_table(options)方法,设置x轴为数据表格式。chart.set_table()

4.3:图表示例

# encoding=gbkimport xlsxwriter # 一:创建工作簿workbook = xlsxwriter.Workbook('test.xlsx')#创建一个excel文件 # 二:创建工作表worksheet1 = workbook.add_worksheet('test-sheet1')#在文件中创建一个名为test-sheet1的sheet,不加名字默认为sheet1 # 三:数据准备row_data=['姓名','数学','英语','语文']col_data = [    ['张三','李四','老王','德华','赵四'],    [90, 85, 120, 130, 99],    [70, 65, 120, 109, 110],    [60, 95, 130, 120, 79]] worksheet1.write_row('A1',row_data)worksheet1.write_column('A2',col_data[0])worksheet1.write_column('B2',col_data[1])worksheet1.write_column('C2',col_data[2])worksheet1.write_column('D2',col_data[3]) # 四:创建chart对象chart = workbook.add_chart({'type':'line'})        # 线条样式的图表# chart = workbook.add_chart({'type':'column'})      # 柱状图# chart = workbook.add_chart({'type':'area'})       # 面积样式的图表# chart = workbook.add_chart({'type':'stock'})      # 股票样式的图表# chart = workbook.add_chart({'type':'bar'})        # 条形图# chart = workbook.add_chart({'type':'pie'})        # 饼形图# chart = workbook.add_chart({'type':'scatter'})    # 散点图# chart = workbook.add_chart({'type':'radar'})      # 雷达样式的图表  chart.add_series({    'name':'=test-sheet1!$B$1',    'categories': '=test-sheet1!$A$2:$A$6',    'values': '=test-sheet1!$B$2:$B$6',    'line': {'color': 'red'},    'pie': {'color': 'red'},}) chart.add_series({    'name':'=test-sheet1!$C$1',    'categories': '=test-sheet1!$A$2:$A$6',    'values': '=test-sheet1!$C$2:$C$6',    'line': {'color': 'yellow'},    'pie': {'color': 'yellow'},}) chart.add_series({    'name':'=test-sheet1!$D$1',    'categories': '=test-sheet1!$A$2:$A$6',    'values': '=test-sheet1!$D$2:$D$6',    'line': {'color': 'blue'},    'pie': {'color': 'blue'},}) chart.set_title({'name':'测试'})chart.set_x_axis({'name':"x轴"})chart.set_y_axis({'name':'y轴'})          #设置图表表头及坐标轴 chart.set_style(1)# chart.set_style(37) worksheet1.insert_chart('B8',chart,{'x_offset':25,'y_offset':10})   #放置图表位置 workbook.close()  """官方文档:https://xlsxwriter.readthedocs.io/chart.html"""

输出结果:

xlsxwriter设置列宽_Python3之excel操作——xlsxwriter模块相关推荐

  1. xlsxwriter 合并单元格_Python3之excel操作xlsxwriter模块

    1:xlsxwriter模块介绍     xlsxwriter模块主要用来生成excel表格(后缀名为.xlsx)文件,插入数据.插入图标等表格操作.写大文件,速度快且只占用很小的内存空间; 2:xl ...

  2. excel操作 - xlwings模块

    文章目录 excel操作 - xlwings模块 xlwings模块介绍 读写的基本操作 写入 读取 xlwings库总结 APP 操作方法 Book 操作方法 Sheet 操作方法 range 操作 ...

  3. matlab设置列宽,matlab和Excel的交互-(2-单元格操作)

    此处默认:Excel=actxserver('Excel.application'); Workbook 为已添加工作簿,eSheet1与eSheet2为工作表1和工作表2,都是具体的一个对象名,请根 ...

  4. xlrd读取所有sheet名_Python3之excel操作——xlrd,xlwt,xlutils模块

    Python中操作excel有xlrd,xlwt,xlutils模块,openpyxl模块,xlsxwriter等模块,这里先介绍xlrd,xlwt,xlutils模块. xlrd是读excel的库, ...

  5. 3.1 数据报表之Excel操作模块 XlsxWriter

    Excel是当前最流行的电子表格处理软件,支持丰富的计算函数及图表,在系统运营方面广泛用于运营数据报表,比如业务质量,资源利用,安全扫描等报表,同时也是应用系统常见的文件导出格式,以便数据使用人员做进 ...

  6. python小程序嵌入excel_用原生的方式操作Excel,Python玩转Excel神器xlsxwriter详解!...

    大家好,在之前的Python办公自动化系列文章中,我们已经介绍了两个Python操作Excel的库openpyxl与xlwings,并且相信大家已经了解这两者之间的异同. 但是在Python中操作Ex ...

  7. 用原生的方式操作Excel,Python玩转Excel神器xlsxwriter详解!

    来源:早起Python 本文就将介绍一个强大的库xlsxwriter.来学习如何用原生的方式操作Excel! 首先还是来简单了解下这三个库之间的区别 " openpyxl:只允许读取和写入. ...

  8. excel2010设置列宽为像素_使用像素单位设置 EXCEL 列宽或行高

    在导出 Excel 的时候, 经常要需要给列设置宽度或给行设置高度, 在使用 NPOI 或 EppPlus 等组件进行操作的时候, 列宽和行高的单位都不是像素, 好像是英寸,具体是啥也说不清. 平常在 ...

  9. excel2010设置列宽为像素_怎么改变Excel中列宽的像素

    展开全部 1.打开EXCEL工作bai簿,在[du开始]选项卡-[单zhi元格]功能组中[格式]下拉dao列表中可以设置[行回高].列宽同样在这答里可以找到设置. 2.在行号上点鼠标右键,在弹出的快捷 ...

  10. javaweb使用poi下载excel设置样式、合并单元格、设置列宽

    @Overridepublic void exportMajorInfo(@RequestBody StudentInfoDto studentInfoDto) {// 至少存在4列int miniC ...

最新文章

  1. 浅谈Transformer的初始化、参数化与标准化
  2. [python] 基于k-means和tfidf的文本聚类代码简单实现
  3. SAP Spartacus里product code出现在url的几种场景
  4. JS实现生成一个周对应日期数组
  5. Java面试——Redis系列总结
  6. 详细讲解Spring中的@Bean注解
  7. rancher中添加用户,赋予权限
  8. Poj 1755Triathlon 未Ac,先mark
  9. 大数据可视化技术的挑战及应对
  10. mysql safe 模式_MYSQL的安全模式:sql_safe_updates介绍
  11. Python集合框架
  12. FFmpeg 基本用法
  13. java怎么给类中的私有变量赋值_java练习本(原每日一练)(20190430)
  14. lzg_ad: SQL SERVER2000安装问题
  15. android麦克风被禁用怎么办,为什么微信麦克风被禁用?如何开启?
  16. Python基础篇(九)-- 正则表达式
  17. 提高网站权重,快速增加百度收录量
  18. Python比较两个日期大小
  19. 全面解说火星人集成灶:多方面拿下第一,到底是如何做到的?
  20. GISER的技术栈(亲们,又更新了哦!)

热门文章

  1. 编程分钟转化小时怎么编_CNC数控加工中心编程好学吗?多年数控编程工程师指点迷津...
  2. 卷积神经网络完整总结
  3. 一级计算机考试比分,人工智能期末考试模拟试题一01
  4. 软件集合:人人刚需的神器,已解锁使用
  5. 24点扑克游戏详细解析附代码
  6. Excel技能——批量生成excel的工作表名称目录链接
  7. ubuntu freeradius mysql_ubuntu上安装和配置FreeRadius
  8. 关于Keil4 C51版本可以编译但是无法完成编译的问题解决
  9. cdr添加节点快捷键_常用CDR快捷键
  10. coreldraw2019天气滤镜_CorelDRAW2019快捷键大全