Python實現(xiàn)定制自動化業(yè)務(wù)流量報表周報功能【XlsxWriter模塊】
本文實例講述了Python實現(xiàn)定制自動化業(yè)務(wù)流量報表周報功能。分享給大家供大家參考,具體如下:
一 點睛
本次實踐通過定制網(wǎng)站5個頻道的流量報表周報,通過XlsxWriter 模塊將流量數(shù)據(jù)寫入Excel文檔,同時自動計算各頻道周平均流量,再生成數(shù)據(jù)圖表。具體是通過workbook.add_chart({'type':'column'})方 法指定圖表類型為柱形,使用write_row、write_column方法分別以行、 列方式寫入數(shù)據(jù),使用add_format()方法定制表頭、表體的顯示風(fēng)格,使用add_series()方法將數(shù)據(jù)添加到圖表,同時使用 chart.set_size、set_title、set_y_axis設(shè)置圖表的大小及標(biāo)題屬性,最后通 過insert_chart方法將圖表插入工作表中。
二 代碼
#coding: utf-8
import xlsxwriter
workbook = xlsxwriter.Workbook('chart.xlsx')
worksheet = workbook.add_worksheet()
chart = workbook.add_chart({'type': 'column'})
title = [u'業(yè)務(wù)名稱',u'星期一',u'星期二',u'星期三',u'星期四',u'星期五',u'星期六',u'星期日',u'平均流量']
buname= [u'業(yè)務(wù)官網(wǎng)',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],
]
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'業(yè)務(wù)流量周報圖表'})
chart.set_y_axis({'name': 'Mb/s'})
worksheet.insert_chart('A8', chart)
workbook.close()
三 顯示結(jié)果

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python操作Excel表格技巧總結(jié)》、《Python文件與目錄操作技巧匯總》、《Python文本文件操作技巧匯總》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程》
希望本文所述對大家Python程序設(shè)計有所幫助。
相關(guān)文章
Python登錄QQ郵箱發(fā)送郵件的實現(xiàn)示例
本文主要介紹了Python登錄QQ郵箱發(fā)送郵件的實現(xiàn)示例,主要就是三步,登錄郵件、寫郵件內(nèi)容、發(fā)送,文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧<BR>2023-08-08
python 阿里云oss實現(xiàn)直傳簽名與回調(diào)驗證的示例方法
這篇文章主要介紹了python 阿里云oss實現(xiàn)直傳簽名與回調(diào)驗證,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
高考要來啦!用Python爬取歷年高考數(shù)據(jù)并分析
轉(zhuǎn)眼間,高考的日子又要來臨了,不知道高考學(xué)子們準(zhǔn)備的怎么樣了,今天這篇文章簡單且隨意地分析一下高考的一些數(shù)據(jù),需要的朋友可以參考下2021-06-06
Windows系統(tǒng)下使用flup搭建Nginx和Python環(huán)境的方法
這篇文章主要介紹了Windows系統(tǒng)下使用flup搭建Nginx和Python環(huán)境的方法,文中使用到了flup這個Python的FastCGI工具,需要的朋友可以參考下2015-12-12

