Board logo

标题: Windows下Python3管理Excel表+绘图库Matplotlib [打印本页]

作者: admin    时间: 2019-10-4 09:30     标题: Windows下Python3管理Excel表+绘图库Matplotlib

例子一: 创建一个Excel表的脚本: 脚本内容:(C:\Users\jacky\Desktop\xx.py) #coding=utf-8 import xlwt wbk = xlwt.Workbook() sheet = wbk.add_sheet('苹果') #添加一个工作表,名称为“苹果” sheet.write(0,0,'苹果一周销量情况(斤)') #往第1行第1列写入内容 sheet.write(1,0,'星期一') #往第2行第1列写入内容 sheet.write(1,1,'星期二') #往第2行第2列写入内容 sheet.write(1,2,'星期三') #往第2行第3列写入内容 sheet.write(1,3,'星期四') sheet.write(1,4,'星期五') sheet.write(1,5,'星期六') sheet.write(1,6,'星期日') A1 = 10 A2 = 20 A3 = 30 A4 = 50 A5 = 40 A6 = 60 A7 = 70 sheet.write(2,0,A1) #往第3行第1列写入内容 sheet.write(2,1,A2) #往第3行第2列写入内容 sheet.write(2,2,A3) #往第3行第3列写入内容 sheet.write(2,3,A4) sheet.write(2,4,A5) sheet.write(2,5,A6) sheet.write(2,6,A7) ### sheet = wbk.add_sheet("") #再添加一个工作表,名称为“梨” sheet.write(0,0,'梨一周销量情况(公斤)') #往第1行第1列写入内容 sheet.write(1,0,'星期一') #往第2行第1列写入内容 sheet.write(1,1,'星期二') #往第2行第2列写入内容 sheet.write(1,2,'星期三') #往第2行第3列写入内容 sheet.write(1,3,'星期四') sheet.write(1,4,'星期五') sheet.write(1,5,'星期六') sheet.write(1,6,'星期日') A1 = 10.3 A2 = 20.4 A3 = 30.7 A4 = 50.9 A5 = 40 A6 = 60 A7 = 70 sheet.write(2,0,A1) #往第3行第1列写入内容 sheet.write(2,1,A2) #往第3行第2列写入内容 sheet.write(2,2,A3) sheet.write(2,3,A4) sheet.write(2,4,A5) sheet.write(2,5,A6) sheet.write(2,6,A7) wbk.save('d:/share/销售登记表_2019.xls') #保存Excel表 运行脚本的效果: C:\Users\jacky>cd Desktop C:\Users\jacky\Desktop>python xx.py C:\Users\jacky\Desktop> 新生成的Excel表: 图片1.png 图片2.png 图片3.png ###### 例子二: 更改指定工作表的指定单元格的内容、样式的脚本: 脚本内容: #coding=utf-8 import xlwt import xlrd from xlutils.copy import copy file_1 = 'd:/share/销售登记表_2019.xls' #指定Excel表 workbook = xlrd.open_workbook(file_1,formatting_info=True) #保持原有的样式 workbooknew = copy(workbook) sheet_1 = '苹果' #指定工作表 ws = workbooknew.get_sheet(sheet_1) style_1 = xlwt. XFStyle() font_1 = xlwt.Font() font_1.name = 'Calibri' # 设置主题字体 font_1.colour_index = 4 # 设置字体颜色;4 代表蓝色 font_1.height = 200 # 设置字体大小 style_1.font = font_1 Key_1 = '星期一' ws.write(1, 0, Key_1,style_1) #往第2行第1列更改内容、字体样式 workbooknew.save(file_1) print('Update successful.') 运行脚本的效果: C:\Users\jacky\Desktop>python xx.py Update successful. C:\Users\jacky\Desktop> 图片4.png ###### 例子三: 更改指定工作表的指定单元格的内容、样式的脚本: 脚本内容: #coding=utf-8 import xlwt import xlrd from xlutils.copy import copy file_1 = 'd:/share/销售登记表_2019.xls' #指定Excel表 workbook = xlrd.open_workbook(file_1,formatting_info=True) #保持原有的样式 workbooknew = copy(workbook) sheet_1 = 0 ws = workbooknew.get_sheet(sheet_1) #定位到第1页的工作表;从0开始计算的 style_1 = xlwt. XFStyle() font_1 = xlwt.Font() font_1.name = 'Arial' # 设置主题字体 font_1.colour_index = 4 # 设置字体颜色;4 代表蓝色 font_1.height = 200 # 设置字体大小 font_1.bold = True # 设置字体为粗体 style_1.font = font_1 Key_1 = '星期二' ws.write(1, 1, Key_1,style_1) #往第2行第2列更改内容、字体样式 ### style_2 = xlwt. XFStyle() font_2 = xlwt.Font() font_2.name = 'Calibri'# 设置主题字体 font_2.colour_index = 6 # 设置字体颜色;6 代表紫色 font_2.height = 200 # 设置字体大小 font_2.italic = True # 设置字体为倾斜 style_2.font = font_2 Key_2 = '周三' ws.write(1, 2, Key_2,style_2) #往第2行第3列更改内容、字体样式 workbooknew.save(file_1) print('Update successful.') 运行脚本的效果: C:\Users\jacky\Desktop>python xx.py Update successful. C:\Users\jacky\Desktop> 图片5.png ###### 例子四: 更改指定工作表的指定单元格的内容、样式的脚本: 脚本内容: #coding=utf-8 import xlwt import xlrd from xlutils.copy import copy file_1 = 'd:/share/销售登记表_2019.xls' #指定Excel表 workbook = xlrd.open_workbook(file_1,formatting_info=True) #保持原有的样式 workbooknew = copy(workbook) sheet_1 = 0 ws = workbooknew.get_sheet(sheet_1) #定位到第1页的工作表;从0开始计算的 style_1 = xlwt. XFStyle() font_1 = xlwt.Font() font_1.name = 'Arial' # 设置主题字体 font_1.colour_index = 0 # 设置字体颜色;0 代表黑色 font_1.height = 200 # 设置字体大小 style_1.font = font_1 Key_1 = '星期二' ws.write(1, 1, Key_1,style_1) #往第2行第2列更改内容、字体样式 workbooknew.save(file_1) print('Update successful.') 运行脚本的效果: C:\Users\jacky\Desktop>python xx.py Update successful. C:\Users\jacky\Desktop> 图片6.png 备注:第2行第2列的单元格的字体粗体不见了。 ###### 例子五: 更改指定工作表的指定单元格的内容、样式的脚本:(合并单元格) 脚本内容: #coding=utf-8 import xlwt import xlrd from xlutils.copy import copy file_1 = 'd:/share/销售登记表_2019.xls' #指定Excel表 workbook = xlrd.open_workbook(file_1,formatting_info=True) #保持原有的样式 workbooknew = copy(workbook) sheet_1 = 0 ws = workbooknew.get_sheet(sheet_1) #定位到第1页的工作表;从0开始计算的 style_1 = xlwt.XFStyle() font_1 = xlwt.Font() font_1.name = 'Calibri' # 设置主题字体 font_1.colour_index = 3 # 设置字体颜色;3 代表绿色 font_1.height = 200 # 设置字体大小 style_1.font = font_1 Key_1 = '苹果一周销量情况(公斤)' ws.write_merge(0, 0, 0, 6, Key_1, style_1) #单元格合并后写入内容 workbooknew.save(file_1) print('Update successful.') 运行脚本的效果: C:\Users\jacky\Desktop>python xx.py Update successful. C:\Users\jacky\Desktop> 图片7.png ###### 例子六: 更改指定工作表的指定单元格的内容、样式的脚本:(合并的单元格) 脚本内容: #coding=utf-8 import xlwt import xlrd from xlutils.copy import copy file_1 = 'd:/share/销售登记表_2019.xls' #指定Excel表 workbook = xlrd.open_workbook(file_1,formatting_info=True) #保持原有的样式 workbooknew = copy(workbook) sheet_1 = '苹果' #指定工作表 ws = workbooknew.get_sheet(sheet_1) style_1 = xlwt.XFStyle() alignment_1 = xlwt.Alignment() alignment_1.horz = 0x02 alignment_1.vert = 0x01 style_1.alignment = alignment_1 # 设置字体居中 Key_1 = '苹果一周销量情况(公斤)' ws.write(0, 0, Key_1, style_1) #往合并了的单元格合写入内容 workbooknew.save(file_1) print('Update successful.') 运行脚本的效果: C:\Users\jacky\Desktop>python xx.py Update successful. C:\Users\jacky\Desktop> 图片8.png ###### 例子七: 更改指定工作表的指定单元格的内容、样式的脚本:(合并单元格) 脚本内容: #coding=utf-8 import xlwt import xlrd from xlutils.copy import copy file_1 = 'd:\\share\\销售登记表_2019.xls' #指定Excel表 workbook = xlrd.open_workbook(file_1,formatting_info=True) #保持原有的样式 workbooknew = copy(workbook) sheet_1 = 1 ws = workbooknew.get_sheet(sheet_1) #定位到第2页的工作表;从0开始计算的 style_1 = xlwt.XFStyle() alignment_1 = xlwt.Alignment() alignment_1.horz = 0x02 alignment_1.vert = 0x01 style_1.alignment = alignment_1 # 设置字体居中 font_1 = xlwt.Font() font_1.name = 'Calibri' # 设置主题字体 font_1.colour_index = 2 # 设置字体颜色;1 代表白色,2 代表红色 font_1.height = 200 # 设置字体大小 style_1.font = font_1 Key_1 = '梨一周销量情况(公斤)' ws.write_merge(0, 0, 0, 6, Key_1, style_1) #单元格合并后写入内容 workbooknew.save(file_1) print('Update successful.') 运行脚本的效果: C:\Users\jacky\Desktop>python xx.py Update successful. C:\Users\jacky\Desktop> 图片9.png ###### 例子八: 更改指定工作表的指定单元格的内容的脚本:(合并的单元格) 脚本内容: #coding=utf-8 import xlrd from xlutils.copy import copy file_1 = 'd:/share/销售登记表_2019.xls' #指定Excel表 workbook = xlrd.open_workbook(file_1,formatting_info=True) #保持原有的样式 workbooknew = copy(workbook) sheet_1 = '梨' #指定工作表 ws = workbooknew.get_sheet(sheet_1) Key_1 = '香蕉一周销量情况(公斤)' ws.write(0, 0, Key_1) #往第1行第1列更改内容 workbooknew.save(file_1) print('Update successful.') 运行脚本的效果: C:\Users\jacky\Desktop>python xx.py Update successful. C:\Users\jacky\Desktop> 图片10.png ###### 例子九: 更改指定工作表的指定单元格的内容、样式的脚本:(合并的单元格) 脚本内容: #coding=utf-8 import xlwt import xlrd from xlutils.copy import copy file_1 = 'd:/share/销售登记表_2019.xls' #指定Excel表 workbook = xlrd.open_workbook(file_1,formatting_info=True) #保持原有的样式 workbooknew = copy(workbook) sheet_1 = '梨' #指定工作表 ws = workbooknew.get_sheet(sheet_1) style_1 = xlwt.XFStyle() alignment_1 = xlwt.Alignment() alignment_1.horz = 0x02 alignment_1.vert = 0x01 style_1.alignment = alignment_1 # 设置字体居中 font_1 = xlwt.Font() font_1.name = 'Calibri' # 设置主题字体 font_1.colour_index = 2 # 设置字体颜色;1 代表白色,2 代表红色 font_1.height = 200 # 设置字体大小 style_1.font = font_1 Key_1 = '香蕉一周销量情况(公斤)' ws.write(0, 0, Key_1, style_1) #往第1行第1列更改内容 workbooknew.save(file_1) print('Update successful.') 运行脚本的效果: C:\Users\jacky\Desktop>python xx.py Update successful. C:\Users\jacky\Desktop> 图片11.png ###### 例子十: 更改Excel表中的指定工作表的名称的脚本: 脚本内容: #coding=utf-8 import xlrd from xlutils.copy import copy file_1 = 'd:/share/销售登记表_2019.xls' #指定Excel表 workbook = xlrd.open_workbook(file_1,formatting_info=True) #保持原有的样式 workbooknew = copy(workbook) idx = workbook.sheet_names()[1] #定位到第2页的工作表;从0开始计算的 workbooknew.get_sheet(idx).name = u'梨QQ' #指定工作表的新名称 workbooknew.save(file_1) print('Update successful.') 运行脚本的效果: C:\Users\jacky\Desktop>python xx.py Update successful. C:\Users\jacky\Desktop> 图片12.png ###### 例子十一: 更改Excel表中的指定工作表的名称的脚本: 脚本内容: #coding=utf-8 import xlrd from xlutils.copy import copy file_1 = 'd:\\share\\销售登记表_2019.xls' #指定Excel表 workbook = xlrd.open_workbook(file_1,formatting_info=True) #保持原有的样式 workbooknew = copy(workbook) sheet_1 = '梨QQ' #指定工作表的旧名称 idx = workbook.sheet_names().index(sheet_1) workbooknew.get_sheet(idx).name = u'香蕉' #指定工作表的新名称 workbooknew.save(file_1) print('Update successful.') 运行脚本的效果: C:\Users\jacky\Desktop>python xx.py Update successful. C:\Users\jacky\Desktop> 图片13.png ###### 例子十二: 从Excel表的指定工作表中读取数据到图形里进行显示: 脚本内容: #coding=utf-8 import xlrd import matplotlib.pyplot as plt import numpy as np file_1 = 'd:\\share\\销售登记表_2019.xls' #指定Excel表 workbook = xlrd.open_workbook(file_1) sheet_1 = "香蕉" My_sheet = workbook.sheet_by_name(sheet_1) #定位到指定名称的工作表 def func1(): My_rows = My_sheet.row_values(2) # 获取第3行全部内容;从0开始计算的 Key_1 = My_rows[0] # 所得行的第1个元素的内容 Key_2 = My_rows[1] # 所得行的第2个元素的内容 Key_3 = My_rows[2] # 所得行的第3个元素的内容 Key_4 = My_rows[3] Key_5 = My_rows[4] Key_6 = My_rows[5] Key_7 = My_rows[6] func2(Key_1,Key_2,Key_3,Key_4,Key_5,Key_6,Key_7) def func2(Key_1,Key_2,Key_3,Key_4,Key_5,Key_6,Key_7): plt.rcParams['font.sans-serif']=['SimHei'] plt.rcParams['axes.unicode_minus']=False plt.title("香蕉一周销量情况") #图形标题 plt.xlabel('时间') #x轴名称 plt.ylabel('销量(公斤)') #y轴名称 A1 = "星期一" A2 = "星期二" A3 = "星期三" A4 = "星期四" A5 = "星期五" A6 = "星期六" A7 = "星期日" x1 = [A1,A2,A3,A4,A5,A6,A7] #x轴的点的值 B1 = Key_1 B2 = Key_2 B3 = Key_3 B4 = Key_4 B5 = Key_5 B6 = Key_6 B7 = Key_7 y1 = [B1,B2,B3,B4,B5,B6,B7] #y轴的点的值 plt.plot(x1,y1,label='香蕉',color='blue',linewidth=1.0,linestyle='--') plt.legend() #显示图例(label) plt.grid(True,linestyle=':',color='red',alpha=0.6) #显示网格线 plt.show() #显示图形 if __name__ == '__main__': func1() 脚本运行中的效果:(组合键Ctrl+c可结束程序的执行) 图片14.png 图片15.png ###### 例子十三: 从Excel表的指定工作表中读取数据到图形里进行显示: 脚本内容: #coding=utf-8 import xlrd import matplotlib.pyplot as plt import numpy as np file_1 = 'd:/share/销售登记表_2019.xls' #指定Excel表 workbook = xlrd.open_workbook(file_1) My_sheet = workbook.sheets()[1] #定位到第2页的工作表;从0开始计算的 class class1(): def func1(self): My_rows = My_sheet.row_values(2) # 获取第3行全部内容;从0开始计算的 self.Key_1 = My_rows[0] # 所得行的第1个元素的内容 self.Key_2 = My_rows[1] # 所得行的第2个元素的内容 self.Key_3 = My_rows[2] # 所得行的第3个元素的内容 self.Key_4 = My_rows[3] self.Key_5 = My_rows[4] self.Key_6 = My_rows[5] self.Key_7 = My_rows[6] self.func2() def func2(self): plt.rcParams['font.sans-serif'] = ['SimHei'] plt.rcParams['axes.unicode_minus'] = False plt.title("香蕉一周销量情况") #图形标题 plt.xlabel('时间') #x轴名称 plt.ylabel('销量(公斤)') #y轴名称 A1 = "星期一" A2 = "星期二" A3 = "星期三" A4 = "星期四" A5 = "星期五" A6 = "星期六" A7 = "星期日" x1 = [A1,A2,A3,A4,A5,A6,A7] #x轴的点的值 B1 = self.Key_1 B2 = self.Key_2 B3 = self.Key_3 B4 = self.Key_4 B5 = self.Key_5 B6 = self.Key_6 B7 = self.Key_7 y1 = [B1,B2,B3,B4,B5,B6,B7] #y轴的点的值 plt.plot(x1,y1,label='香蕉',color='blue',linewidth=1.0,linestyle='--') plt.legend() #显示图例(label) plt.grid(True,linestyle=':',color='red',alpha=0.6) #显示网格线 plt.show() #显示图形 if __name__ == '__main__': myclass = class1() myclass.func1() 脚本运行中的效果:(组合键Ctrl+c可结束程序的执行) 图片16.png 图片17.png 相关文章: Windows下Python3管理Excel表 Windows下Python3使用绘图库Matplotlib 自定义类

图片附件: 图片1.png (2022-8-1 14:11, 64.4 KB) / 下载次数 60
http://blog.zhuohua.store/attachment.php?aid=20146&k=f16c023fdeef3357d64d1635dd47285f&t=1714819516&sid=z8Pcxz



图片附件: 图片2.png (2022-8-1 14:11, 22.01 KB) / 下载次数 63
http://blog.zhuohua.store/attachment.php?aid=20147&k=66b12f7d1dc906a4e9abb8763dfba833&t=1714819516&sid=z8Pcxz



图片附件: 图片3.png (2022-8-1 14:19, 22.74 KB) / 下载次数 66
http://blog.zhuohua.store/attachment.php?aid=20148&k=cb231e13e69128ab5b5e3dc15d53b3e2&t=1714819516&sid=z8Pcxz



图片附件: 图片4.png (2022-8-1 14:19, 20.22 KB) / 下载次数 67
http://blog.zhuohua.store/attachment.php?aid=20149&k=e990ae04d2056dbde6c5219fa2dc0ef3&t=1714819516&sid=z8Pcxz



图片附件: 图片5.png (2022-8-1 14:21, 20.81 KB) / 下载次数 66
http://blog.zhuohua.store/attachment.php?aid=20150&k=fe3da83900bd7489c6464500d7de90e5&t=1714819516&sid=z8Pcxz



图片附件: 图片6.png (2022-8-1 14:22, 21.28 KB) / 下载次数 60
http://blog.zhuohua.store/attachment.php?aid=20151&k=704496635d99d6491c3892409bdb3dc5&t=1714819516&sid=z8Pcxz



图片附件: 图片7.png (2022-8-1 14:23, 31.06 KB) / 下载次数 69
http://blog.zhuohua.store/attachment.php?aid=20152&k=b30f4494055006e4f1d70915dcd5717f&t=1714819516&sid=z8Pcxz



图片附件: 图片8.png (2022-8-1 14:24, 31.39 KB) / 下载次数 64
http://blog.zhuohua.store/attachment.php?aid=20153&k=6d23db83bd395792d4afd63f7167cca7&t=1714819516&sid=z8Pcxz



图片附件: 图片9.png (2022-8-1 14:25, 30.7 KB) / 下载次数 61
http://blog.zhuohua.store/attachment.php?aid=20154&k=4dbdc449a898c2b00eaf6c63389fef50&t=1714819516&sid=z8Pcxz



图片附件: 图片10.png (2022-8-1 14:26, 31.42 KB) / 下载次数 67
http://blog.zhuohua.store/attachment.php?aid=20155&k=41a7c07e8af40c10607a35cd8ee8e5b1&t=1714819516&sid=z8Pcxz



图片附件: 图片11.png (2022-8-1 14:26, 31.16 KB) / 下载次数 31
http://blog.zhuohua.store/attachment.php?aid=20156&k=ea03b01dfe895e20a33c608637b5ebf3&t=1714819516&sid=z8Pcxz



图片附件: 图片12.png (2022-8-1 14:27, 23.33 KB) / 下载次数 42
http://blog.zhuohua.store/attachment.php?aid=20157&k=5327b5fe35b8869fce1e4c6e7cdc1897&t=1714819516&sid=z8Pcxz



图片附件: 图片13.png (2022-8-1 14:28, 23.17 KB) / 下载次数 32
http://blog.zhuohua.store/attachment.php?aid=20158&k=7b457f6531911e4b03798d2f475b4c0f&t=1714819516&sid=z8Pcxz



图片附件: 图片14.png (2022-8-1 14:29, 11.49 KB) / 下载次数 26
http://blog.zhuohua.store/attachment.php?aid=20159&k=2f92189acc82c243b5b331d89ecdb85a&t=1714819516&sid=z8Pcxz



图片附件: 图片15.png (2022-8-1 14:29, 143.64 KB) / 下载次数 30
http://blog.zhuohua.store/attachment.php?aid=20160&k=f5a223d901a122b29263990a6746e0e9&t=1714819516&sid=z8Pcxz



图片附件: 图片16.png (2022-8-1 14:31, 11.49 KB) / 下载次数 36
http://blog.zhuohua.store/attachment.php?aid=20161&k=001cac39acb849f955f022375b849635&t=1714819516&sid=z8Pcxz



图片附件: 图片17.png (2022-8-1 14:31, 143.92 KB) / 下载次数 35
http://blog.zhuohua.store/attachment.php?aid=20162&k=6a9d00254d6b2f198ee59f303a392376&t=1714819516&sid=z8Pcxz






欢迎光临 blog.zhuohua.store (http://blog.zhuohua.store/) Powered by Discuz! 7.2