Python自动化办公之 Excel 自动绘制图表

优采云 发布时间: 2022-05-08 01:27

  Python自动化办公之 Excel 自动绘制图表

  近期活动

  <p style="outline: 0px;max-width: 100%;color: rgb(63, 63, 63);font-size: 15px;letter-spacing: 0px;white-space: normal;font-family: "Helvetica Neue", Helvetica, "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif;line-height: normal;visibility: visible;box-sizing: border-box !important;overflow-wrap: break-word !important;">Python数据挖掘2022五一工作坊开始报名啦</p>

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

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

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

  基本原理

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

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

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

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

  # 自定义样式,加粗<br />bold = workbook.add_format({'bold': 1})<br /><br /># 向excel中写入数据,建立图标时要用到<br />headings = ['Number', 'testA', 'testB']<br />data = [<br />    ['2020-9-1', '2020-9-2', '2020-9-3', '2020-9-4', '2020-9-5', '2020-9-6'],<br />    [10, 40, 50, 20, 10, 50],<br />    [30, 60, 70, 50, 40, 30],<br />]<br /><br /># 写入表头<br />worksheet.write_row('A1', headings, bold)<br /><br /># 写入数据<br />worksheet.write_column('A2', data[0])<br />worksheet.write_column('B2', data[1])<br />worksheet.write_column('C2', data[2])<br />

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

  

  画图开始

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

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

  通过 add_chart 函数来新增一个图表,type 就是 图表都类型

  而对于 add_series 就是具体都图表数据信息了,相信也是一目了然的!

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

  

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

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

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

  今日封面:

  

  精选文章

  <p style="outline: 0px;max-width: 100%;color: rgb(63, 63, 63);font-size: 15px;letter-spacing: 0px;white-space: normal;font-family: "Helvetica Neue", Helvetica, "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif;line-height: normal;box-sizing: border-box !important;overflow-wrap: break-word !important;">Python语法入门(含视频代码)<br style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />

  视频专栏课 | Python网络爬虫与文本分析

  TransBigData库 | *敏*感*词*GPS数据处理<br style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />

  从符号到嵌入:计算社会科学的两种文本表示<br style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />

  案例实战 | 企业信息数据采集<br style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />

  使用文本相似度可以识别变化的时间点<br style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />

  PNAS | 文本网络分析&文化桥梁Python代码实现<br style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />

  tomotopy | 速度最快的LDA主题模型

  在会计研究中使用Python进行文本分析<br style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />

  文本分析方法在《管理世界》(2021.5)中的应用

  SciencePlots | 科研样式绘图库

  Wow~70G上市公司定期报告数据集

  YelpDaset: 酒店管理类数据集10+G  

  极简浏览器启动页StartPage分享<br style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />

  doccano|为机器学习建模做数据标注

  使用WeasyPrint自动生成pdf报告文件

  推荐 | 社科(经管)文本分析快速指南<br style="outline: 0px;max-width: 100%;box-sizing: border-box !important;overflow-wrap: break-word !important;" />

  100min视频 | Python文本分析与会计

  Python数据挖掘2022五一工作坊开始报名啦</p>

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线