python xlsxwriter模块的使用

2020-12-24 0 324

  1.workbook类

add_worksheet

  用于添加一个新的工作表,sheetname为工作表名称,默认是sheet1,例如:

worksheet = workbook.add_worksheet()
worksheet = workbook.add_worksheet(\'测试详情\')

add_format

  用于在工作表中创建一个新的格式对象来格式化单元格

bold = workbook.add_format({
  \'bold\': 1,       #字体加粗
  \'fg_color\': \'green\',  #单元格背景颜色
  \'align\': \'center\',   #对齐方式
  \'valign\': \'vcenter\',  #字体对齐方式
})

add_chart

  用于在工作表中创建一个图表对象,内部通过insert_chart()方法来实现,参数为dict类型。

chart1 = workbook.add_chart({\'type\':\'column\'}) #选择竖状图

设置sheet表单元格的行高和列宽

  set_row(row, height)方法,用于设定某一行单元格的行高

  (row:指定行位置,起始下标为0;height:为float类型,设定行高,单位像素)

  set_column(first_col, last_col, width)方法,用于设置一列或多列单元格的列宽

  (irst_col:整型,指定开始列位置,起始下标为0;last_col:整型,指定结束列位置,起始下标为0;width:float类型,设置列宽)

  set_column(“first_col:last_col”, width)方法(first_col和last_col用英文字母表示列名,起始为A)

# 设置sheet表单元格列宽
ws.set_column(0,3,40) #设定第1到4列的列宽为40
ws.set_column(\"A:A\", 40) #设定A列列宽为40
ws.set_column(\"B:D\", 15) #设定B、C、D三列的列宽为15
ws.set_column(\"E:F\", 50) #设定E、F列的列宽为50

#设置sheet表单元格行高
ws.set_row(0,40) #设置第一行的高度为40

向单元格中写入内容:write

write(row, col, data,cell_format)方法:是用来将普通数据写入单元格中(行标、列标、内容、单元格格式)

write.string():写入字符串类型数据
wirte_number():写入数字型数据
write_blank():写入空类型数据
write_formula():写入公式型数据
write_datetime():写入日期型数据
wirte_boolean():写入逻辑型数据
write_url():写入超链接型数据

# 示例:
ws.write(1,1,\"python操作excel\") #在单元格1行1列中写入:“python操作excel”

  2.chart类

  chart类实图表组件,通过workbook的add_chart方法创建。

chart1 = workbook.add_chart({\'type\':\'column\'}) #选择竖状图

常见的图表样式如下:

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

  3.实例

#!/usr/bin/env python
# _*_ coding:utf-8 _*_
__author__ = \'Yinjia\'

import xlsxwriter

#生成.xlsx文件
workbook = xlsxwriter.Workbook(\'test_table.xlsx\')
#工作页
worksheet = workbook.add_worksheet(\'测试详情\')
worksheet.set_tab_color(\'red\')

#准备测试数据
bold = workbook.add_format({
  \'bold\': 1,       #字体加粗
  \'fg_color\': \'green\',  #单元格背景颜色
  \'align\': \'center\',   #对齐方式
  \'valign\': \'vcenter\',  #字体对齐方式
})
headings = [\'Number\',\'Batch1\',\'Batch2\'] #设置表头
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) #行插入操作
worksheet.write_column(\'A2\',data[0]) #列插入操作
worksheet.write_column(\'B2\',data[1])
worksheet.write_column(\'C2\',data[2])

#插入直方图1
chart1 = workbook.add_chart({\'type\':\'column\'}) #选择竖状图
chart1.add_series({
  \'name\': \'=测试详情!$B$1\',
  \'categories\': \'=测试详情!$A$2:$A$7\',
  \'values\':  \'=测试详情!$B$2:$B$7\',#Y轴值
  \'data_labels\': {\'value\': True} #显示数字,就是直方图上面的数字,默认不显示
})

#注意上面写法 \'=Sheet1!$B$2:$B$7\' Sheet1是指定工作页, $A$2:$A$7是从A2到A7数据,
#插入直方图2
chart1.add_series({
  \'name\': \'=测试详情!$B$1\',
  \'categories\': \'=测试详情!$A$2:$A$7\',
  \'values\':  \'=测试详情!$C$2:$C$7\',#Y轴值
  \'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)\'})#Y轴描述
chart1.set_table() #设置x轴为数据表格式
chart1.set_style(3)#直方图类型
worksheet.insert_chart(\'D2\', chart1, {\'x_offset\': 25, \'y_offset\': 10}) #直方图插入到 D2位置
workbook.close()

  4.效果图

python xlsxwriter模块的使用

作者:YinJia
出处:http://www.cnblogs.com/yinjia/

以上就是python xlsxwriter模块的使用的详细内容,更多关于python xlsxwriter模块的资料请关注自学编程网其它相关文章!

遇见资源网 Python python xlsxwriter模块的使用 http://www.ox520.com/27737.html

常见问题

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务