本文实例讲述了Python实现自定义顺序、排列写入数据到Excel的方法。分享给大家供大家参考,具体如下:
例1. 数据框顺序写入Excel:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
data = a
import xlsxwriter
workbook = xlsxwriter.Workbook( 'F:/chart1.xlsx' )
worksheet = workbook.add_worksheet( '请求接口' )
title = [u '订单号' ,u '债权编号' ,u '请求参数' ,u '创建时间' ,u '结果' ]
print data.iloc[:, 0 ]
format = workbook.add_format()
format .set_border( 1 )
format_title = workbook.add_format()
format_title.set_border( 1 )
format_title.set_bg_color( '#cccccc' )
format_title.set_align( 'center' )
format_title.set_bold()
format_ave = workbook.add_format()
format_ave.set_border( 1 )
format_ave.set_num_format( '0.00' )
worksheet.write_row( 'A1' ,title,format_title)
worksheet.write_column( 'A2:' , data.iloc[:, 0 ], format )
worksheet.write_column( 'B2' , data.iloc[:, 1 ], format )
worksheet.write_column( 'C2' , data.iloc[:, 2 ], format )
worksheet.write_column( 'D2' , data.iloc[:, 3 ], format )
worksheet.write_column( 'E2' , data.iloc[:, 4 ], format )
workbook.close()
|
例2. (自动报表):
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
#coding: utf-8
import xlsxwriter
workbook = xlsxwriter.Workbook( 'F:/chart.xlsx' )
worksheet = workbook.add_worksheet()
chart = workbook.add_chart({ 'type' : 'column' })
title = [u '业务名称' ,u '星期一' ,u '星期二' ,u '星期三' ,u '星期四' ,u '星期五' ,u '星期六' ,u '星期日' ,u '平均流量' ]
buname = [u '业务官网' ,u '新闻中心' ,u '购物频道' ,u '体育频道' ,u '亲子频道' ]
data = [
[ 150 , 152 , 158 , 149 , 155 , 145 , 148 ],
[ 89 , 88 , 95 , 93 , 98 , 100 , 99 ],
[ 201 , 200 , 198 , 175 , 170 , 198 , 195 ],
[ 75 , 77 , 78 , 78 , 74 , 70 , 79 ],
[ 88 , 85 , 87 , 90 , 93 , 88 , 84 ],
]
print data
format = workbook.add_format()
format .set_border( 1 )
format_title = workbook.add_format()
format_title.set_border( 1 )
format_title.set_bg_color( '#cccccc' )
format_title.set_align( 'center' )
format_title.set_bold()
format_ave = workbook.add_format()
format_ave.set_border( 1 )
format_ave.set_num_format( '0.00' )
worksheet.write_row( 'A1' ,title,format_title)
worksheet.write_column( 'A2' , buname, format )
worksheet.write_row( 'B2' , data[ 0 ], format )
worksheet.write_row( 'B3' , data[ 1 ], format )
worksheet.write_row( 'B4' , data[ 2 ], format )
worksheet.write_row( 'B5' , data[ 3 ], format )
worksheet.write_row( 'B6' , data[ 4 ], format )
def chart_series(cur_row):
worksheet.write_formula( 'I' + cur_row, \
'=AVERAGE(B' + cur_row + ':H' + cur_row + ')' ,format_ave)
chart.add_series({
'categories' : '=Sheet1!$B$1:$H$1' ,
'values' : '=Sheet1!$B$' + cur_row + ':$H$' + cur_row,
'line' : { 'color' : 'black' },
'name' : '=Sheet1!$A$' + cur_row,
})
for row in range ( 2 , 7 ):
chart_series( str (row))
chart.set_table()
chart.set_style( 30 )
chart.set_size({ 'width' : 577 , 'height' : 287 })
chart.set_title ({ 'name' : u '业务流量周报图表' })
chart.set_y_axis({ 'name' : 'Mb/s' })
worksheet.insert_chart( 'A8' , chart)
workbook.close()
|
希望本文所述对大家Python程序设计有所帮助。
原文链接:https://blog.csdn.net/u013421629/article/details/78020347