手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

python创建xlsx

时间:2024-10-15 05:55:49

1、import xlrd,xlwt,xlsxwriterfrom xlutils.copy import copyfrom datetime import date,datetimeimport sysreload(sys)sys.setdefaultencoding('utf-8')

python创建xlsx

2、clas衡痕贤伎s WtXlsx(object):"""docstring for WtXlsx"""def __init__(self, file_name):super(WtXlsx, self).__init__()self.file_name = file_nameself.book = xlsxwriter.Workbook(file_name)def add_sheet(self,sheet_name):#新增一个sheetself.sheet=self.book.add_worksheet(sheet_name)return self.sheet

python创建xlsx

3、def write_rows(self,sheet,nrow,mcols,values):#从第mcols列开始填充第nrow行数据for mcol in range(0,len(values)):sheet.write(nrow,mcol+mcols,values[mcol])return Truedef write_cols(self,sheet,nrows,mcol,values):#从第nrows行开始填充第mcol列数据for nrow in range(0,len(values)):sheet.write(nrow+nrows,mcol,values[nrow])return True

python创建xlsx

4、def format(self,arg):#设置单元格式format=self.book.add_format()format.set_border(arg[0])if len(arg)>1:format.set_bg_color(arg[1])elif len(arg)>2:format.set_align(arg[2])return format

python创建xlsx

5、def chart_series_rows(self,chart,sheet_name,nrows,nrow,mcol,mcols):#按行设置图表值categories='='+sheet_name+'!$'+chr(ord(mcol)+1)+'$'+nrows+':$'+mcols+'$'+nrowsvalues='='+sheet_name+'!$'+chr(ord(mcol)+1)+'$'+nrow+':$'+mcols+'$'+nrowname='='+sheet_name+'!$'+mcol+'$'+nrowchart.add_series({'categories': categories, #将nrows行第mcol到mcols列的数据作为x轴'values': values, #将nrow行第mcol到mcols列的数据作为柱状图数据#为数据区域'line': {'color': 'black'}, #线条颜色定义为black(黑色)'name': name, #引用第一列第nrow行数据作为统计项})def chart_series_cols(self,chart,sheet_name,nrows,nrow,mcol,mcols):#按列设置图表值categories='='+sheet_name+'!$'+mcol+'$'+str(nrows+1)+':$'+mcol+'$'+nrowvalues='='+sheet_name+'!$'+mcols+'$'+str(nrows+1)+':$'+mcols+'$'+nrowname='='+sheet_name+'!$'+mcols+'$'+str(nrows)chart.add_series({'categories': categories, #将nrows行第mcol到mcols列的数据作为x轴'values': values, #将nrow行第mcol到mcols列的数据作为柱状图数据#为数据区域'line': {'color': 'black'}, #线条颜色定义为black(黑色)'name': name, #引用第一列第nrow行数据作为统计项})

python创建xlsx

6、def write_chart(self,sheet,width_height,names,cell,nrows_mcols):#按行生成图表chart = self.book.add_chart({'type': 'column'})for nrow in range(nrows_mcols[1]+1, nrows_mcols[2]+1): #数据域以第nrow+1~nrow行进行图表数据系列函数调用self.chart_series_rows(chart,nrows_mcols[0],str(nrows_mcols[1]),str(nrow),nrows_mcols[3],nrows_mcols[4])for col in range(1,ord(nrows_mcols[4])-ord(nrows_mcols[3])+1):self.chart_series_cols(chart,nrows_mcols[0],nrows_mcols[1],str(nrows_mcols[2]),nrows_mcols[3],chr(ord(nrows_mcols[3])+col))chart.set_size({'width': width_height[0], 'height': width_height[1]}) #设置图表大小chart.set_title ({'name': names[0]}) #设置图表(上方)大标题chart.set_y_axis({'name': names[1]}) #设置y轴(左侧)小标题chart.set_x_axis({'name': names[2]}) #设置x轴(下方)小标题sheet.insert_chart(cell, chart) #在cell单元格插入图表

python创建xlsx

7、def save_file(self):#关闭操作的xlsxself.book.close()

python创建xlsx
© 手抄报圈