11 使用openpyxl库进行Excel自动化之创建图表

在上一章中,我们讨论了如何使用 openpyxl 库来修改Excel单元格的内容。这对于整理和更新数据非常有用。而在这一章中,我们将深入探讨如何使用 openpyxl 库来创建图表,进一步增强我们的Excel文件的可视化效果。

1. 什么是图表?

在Excel中,图表是一种直观地表示数据的方法,可以让我们更容易地分析和理解数据。在我们的自动化任务中,图表不仅能增强报告的视觉效果,还能让数据的趋势和比较显而易见。

2. 安装openpyxl库

如果你还没有安装 openpyxl 库,可以通过以下命令进行安装:

1
pip install openpyxl

3. 创建一个简单的Excel文件

在我们开始创建图表之前,首先创建一个包含示例数据的Excel文件。以下代码演示了如何使用 openpyxl 创建一个简单的Excel文件,并填充一些示例数据:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import openpyxl

# 创建一个工作簿
workbook = openpyxl.Workbook()
sheet = workbook.active
sheet.title = "数据"

# 添加一些示例数据
data = [
["产品", "销售量"],
["产品A", 100],
["产品B", 150],
["产品C", 200],
["产品D", 250],
]

for row in data:
sheet.append(row)

# 保存工作簿
workbook.save("sales_data.xlsx")

以上代码创建了一个名为 sales_data.xlsx 的Excel文件,并在其中添加了四个产品及其相应的销售量。

4. 创建图表

现在,我们将添加一个柱状图来可视化我们的销售数据。openpyxl 库支持多种类型的图表,包括柱状图、折线图、饼图等。以下是生成柱状图的代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from openpyxl.chart import BarChart, Reference

# 打开刚刚创建的Excel文件
workbook = openpyxl.load_workbook("sales_data.xlsx")
sheet = workbook["数据"]

# 创建一个柱状图
chart = BarChart()
chart.title = "销售量统计"
chart.x_axis.title = "产品"
chart.y_axis.title = "销售量"

# 定义数据范围
data_ref = Reference(sheet, min_col=2, min_row=1, max_col=2, max_row=5)
categories_ref = Reference(sheet, min_col=1, min_row=2, max_row=5)

# 将数据添加到图表
chart.add_data(data_ref, titles_from_data=True)
chart.set_categories(categories_ref)

# 将图表插入到工作表
sheet.add_chart(chart, "D2") # 从D2单元格开始插入图表

# 保存工作簿
workbook.save("sales_data_with_chart.xlsx")

代码解析

  1. 加载工作簿:我们使用 openpyxl.load_workbook 加载之前创建的 sales_data.xlsx 文件。
  2. 创建图表:使用 BarChart 类创建一个柱状图,并设置其标题和轴名称。
  3. 定义数据范围:利用 Reference 函数指定数据源,包括销售量(Y轴数据)和产品(X轴数据)。
  4. 添加数据到图表:通过 add_data 方法将销售数据添加到图表,并使用 set_categories 设置 X 轴的分类。
  5. 将图表添加到工作表:最后,使用 add_chart 方法将图表插入到工作表中,并保存文件为 sales_data_with_chart.xlsx

5. 查看结果

完成以上步骤后,打开 sales_data_with_chart.xlsx 文件,你就可以看到添加的柱状图了。这个图表清晰直观地展示了不同产品的销售量,便于进一步分析。

6. 结语

在本章中,我们介绍了如何使用 openpyxl 创建图表,以便更加直观地展示Excel数据。这一过程不仅能帮助读者理解数据背后的含义,还能使报告更加吸引人和专业。

接下来的章节中,我们将讨论如何处理Excel中的数据,尤其是数据清洗与整理,这对数据分析至关重要。希望大家继续关注!

11 使用openpyxl库进行Excel自动化之创建图表

https://zglg.work/excel-python-auto/11/

作者

IT教程网(郭震)

发布于

2024-08-11

更新于

2024-08-11

许可协议

分享转发

交流

更多教程加公众号

更多教程加公众号

加入星球获取PDF

加入星球获取PDF

打卡评论