作者 | 黄伟呢
来源 | 数据分析与统计学之美
今天,有位朋友在群里面咨询了一个问题:如何读取Excel表格中"不同sheet表"的同一位置单元格数据,并绘制条形图呢?
有人提议用vba,但是不得不说,没有学过vba的朋友,会觉得vba用起来很困难。那还不容易,直接上Python,没有什么问题是Python解决不了的。
哈哈,说的有点夸张了。但是上述这个问题,用Python解决是绝对没问题。
解题思路
我们先来看看这个数据,长啥样?
一个Excel有3个sheet表,每个sheet表中有一个数据。我们想利用这3个数据,绘制一条折线图。
我的思路大致是这样,整个步骤如下:
新建一个新的Excel表格;
读取该测试数据,并读取每个sheet表中的值;
将上述读取到的数据,写入新建的Excel表格中;
进行图形的绘制;
完整代码
有了上述思路,我们直接上代码,代码中给大家进行了详细的注释。
#导入相关库fromopenpyxlimportload_workbook,Workbookfromopenpyxl.chartimportLineChart,Reference#新建Excel表格wb=Workbook()ws=wb.activews.cell(row=1,column=1).value="销售额"#读取测试表格中的数据,并写入到新建的Excel表格中wb1=load_workbook("测试.xlsx")forindex,valueinenumerate(wb1.sheetnames):ws1=wb1[value]ws.cell(row=index+2,column=1).value=ws1.cell(row=1,column=1).value#进行图形的绘制chart=LineChart()data=Reference(ws,min_row=1,max_row=4,min_col=1,max_col=1)chart.add_data(data,titles_from_data=True)chart.title="不同月份的销售额"chart.y_axis.scaling.min=9chart.y_axis.scaling.max=14ws.add_chart(chart,"D1")wb.save("最新.xlsx")
最终效果如图所示:
往
期
回
顾
技术
Pandas数据类型概述与转换实战
技术
Python版的故宫导游图,来袭
技术
快速实现Resnet残差模型实战
资讯
隐患:神经网络可以隐藏恶意软件
分享
点收藏
点点赞
点在看