今天的主题是 Excel,相信大家都比较熟悉吧。而且我相信,大家在日常使用 Excel 的时候,肯定会遇到很多重复繁琐的工作,因为我也同样遇到过。这个时候我通常都会思考下,有没有办法让繁琐的事情变得简单些呢,毕竟我们是 Python 使用者嘛!

所以我个人在工作当中还是积累来一些 Excel 自动化相关都经验都,在后面都文章当中,我会陆续推出 Excel、PDF 等等相关软件都自动化内容,感兴趣都同学记得来看哦!

今天我们d的主题就是为 Excel 自动添加图表,实现起来很简单,保证五分钟完事儿!

基本原理

这里我们使用 xlsxwriter 这个库,简直不要太强大!

首先我们先来看下如何通过这个库来编辑 Excel 呢

import xlsxwriter# 创建一个excel
workbook = xlsxwriter.Workbook("chart.xlsx")
# 创建一个sheet
worksheet = workbook.add_worksheet()

对于创建 Excel 和新增 sheet 都没啥说的,基本套路搞定!

# 自定义样式,加粗
bold = workbook.add_format({'bold': 1})# 向excel中写入数据,建立图标时要用到
headings = ['Number', 'testA', 'testB']
data = [['2020-9-1', '2020-9-2', '2020-9-3', '2020-9-4', '2020-9-5', '2020-9-6'],[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])

这里,我们定义了一些测试数据,然后通过 write_row 函数写入表头,通过 write_column 函数来按列写入数据,此时我们得到的 Excel 应该是如下的

画图开始

下面就是重点了,我们要看是根据测试数据来画图表了

# 创建一个柱状图(line chart)
chart_col = workbook.add_chart({'type': 'line'})# 配置第一个系列数据
chart_col.add_series({# 这里的sheet1是默认的值,因为我们在新建sheet时没有指定sheet名# 如果我们新建sheet时设置了sheet名,这里就要设置成相应的值'name': '=Sheet1!$B$1','categories': '=Sheet1!$A$2:$A$7','values':   '=Sheet1!$B$2:$B$7','line': {'color': 'red'},
})# 配置第二个系列数据
chart_col.add_series({'name': '=Sheet1!$C$1','categories':  '=Sheet1!$A$2:$A$7','values':   '=Sheet1!$C$2:$C$7','line': {'color': 'yellow'},
})

通过 add_chart 函数来新增一个图表,type 就是 图表都类型
而对于 add_series 就是具体都图表数据信息了,相信也是一目了然的!

最后再设置 X、Y 轴的信息,并设置下图表所在的位置就完成了

# 设置图表的title 和 x,y轴信息
chart_col.set_title({'name': 'The test Analysis'})
chart_col.set_x_axis({'name': 'Test number'})
chart_col.set_y_axis({'name':  'Sample length (mm)'})# 设置图表的风格
chart_col.set_style(1)# 把图表插入到worksheet并设置偏移
worksheet.insert_chart('A10', chart_col, {'x_offset': 25, 'y_offset': 10})workbook.close()

当然的对于画柱状图,饼图等都是类似的,我们也就不再重复了。

下一次,我们就来实现根据已有的数据,如何自动生成我们需要的图表,而且如果我想自动发送给某些人呢,能不能全程自动化搞定呢!

好了,今天就分享到这里,原创不易,给个“在看”再走吧!

END

推荐阅读牛逼!Python常用数据类型的基本操作(长文系列第①篇)
牛逼!Python的判断、循环和各种表达式(长文系列第②篇)牛逼!Python函数和文件操作(长文系列第③篇)牛逼!Python错误、异常和模块(长文系列第④篇)
吴恩达deeplearining.ai的经典总结资料
Ps:从小程序直接获取下载

Python自动化办公之 Excel 自动绘制图表相关推荐

  1. Python 自动化办公:Excel 自动绘制图表

    今天的主题是 Excel,相信大家都比较熟悉吧.而且我相信,大家在日常使用 Excel 的时候,肯定会遇到很多重复繁琐的工作,因为我也同样遇到过.这个时候我通常都会思考下,有没有办法让繁琐的事情变得简 ...

  2. python自动化办公:excel篇,从此做表不加班。

    表格讲解 表格格式 表格分为:工作簿,工作表,单元格 如图:整个文件就是一个工作簿,下面的 zhengjiang_power 和sheet1为工作表. xlrd +xlwt读写表格 因为电脑右键新建的 ...

  3. Python 自动化办公之 Excel 拆分并自动发邮件

    作者 | 周萝卜 来源 | 萝卜大杂烩 今天我们来分享一个真实的自动化办公案例,希望各位 Python 爱好者能够从中得到些许启发,在自己的工作生活中更多的应用 Python,使得工作事半功倍! 需求 ...

  4. Python自动化办公之Excel拆分并自动发邮件

    今天我们来分享一个真实的自动化办公案例,希望各位 Python 爱好者能够从中得到些许启发,在自己的工作生活中更多的应用 Python,使得工作事半功倍! 需求 需要向大约 500 名用户发送带有 E ...

  5. Python自动化办公【Excel】

    1 Excel表格自动化 使用Excel自动化处理,将会用到Python第三方库,所以我们需要提前通过pip3来进行安装.安装Python第三方库的命令如下: pip3 install xlrd pi ...

  6. Python自动化办公-让 Excel 飞起来

    Python 操作 Excel 可能是自动化办公最火热的需求了,看一看公众号文章底部的视频广告就知道了,里面尽是一些 5 分钟搞定 excel,将数据生成漂亮的图表. 5 分钟虽然有些夸张,但是快速操 ...

  7. Python 自动化办公之 Excel 对比工具

    作者 | 周萝卜 来源丨萝卜大杂烩 今天我们继续分享真实的自动化办公案例,希望各位 Python 爱好者能够从中得到些许启发,在自己的工作生活中更多的应用 Python,使得工作事半功倍! 需求 由于 ...

  8. Python自动化办公之Excel对比工具

    今天我们继续分享真实的自动化办公案例,希望各位 Python 爱好者能够从中得到些许启发,在自己的工作生活中更多的应用 Python,使得工作事半功倍! 需求 由于工作当中经常需要对比前后两个 Exc ...

  9. Python自动化办公:读取Excel数据并批量生成合同,高效办公,快速回家

    前言 在我们的工作中,面临着大量的重复性工作,通过人工方式处理往往耗时耗力易出错.而Python在自动化办公方面具有极大的优 势,可以解决我们工作中遇到的很多重复性问题,分分钟搞定办公需求.快速下班回 ...

最新文章

  1. 第七篇:循环神经网络
  2. 实录分享 | 计算未来轻沙龙:图神经网络前沿研讨会
  3. 基于sklearn的LogisticRegression鸢尾花多类分类实践
  4. 37 手游基于 Flink CDC + Hudi 湖仓一体方案实践
  5. 【Elasticsearch】揭秘 Elasticsearch 分片分配
  6. SDWebImage之工具类
  7. 京东的交易系统 之 高并发架构分享
  8. c语言 内存清除函数,C语言内存初始化函数MEMSET的用法
  9. LAMP架构调优(三)——模块的安装与调用
  10. 数据清洗Chap4——dataframe操作
  11. java Spring菜鸟教程,只需一篇文章吃透Java多线程技术
  12. 微信小程序中的常用布局方式(总结)
  13. android当无线鼠标代码,如何将安卓手机变身为无线鼠标
  14. typedef 定义结构体说明
  15. 解决:元素内容必须由格式正确的字符数据或标记组成。
  16. HTML期末作业-我的大学宿舍
  17. 如何生成EAN13流水号条形码
  18. 红楼梦人物出场顺序python_Python 中文词频分析——红楼梦人物出场次数
  19. 服务器主板北桥芯片组有哪些,主板上北桥芯片组都负责管理哪些硬件?
  20. dependency一直报错,换各种jar包都不行

热门文章

  1. 2018/10/02
  2. 紫书:二分图匹配 最大流解决
  3. word2019 添加 mathtype 加载项
  4. vue的url图片转base64
  5. Android自定义组件:一个波浪形的组件
  6. Zemax学习笔记——默认评价函数的使用方法及注意事项
  7. 4.23 详细讲解混合工具的使用 [Illustrator CC教程]
  8. 展望2020(上):运营商跑出差异化
  9. Makeblock程小奔成为日本STEAM教师研修计划首选编程机器人
  10. OpenLayers学习笔记7——使用javaBean实现用户登录