利用Workbook()函数在Python中实现Excel文件的图表绘制
发布时间:2023-12-24 01:50:10
在Python中,可以使用openpyxl库来创建和操作Excel文件,并使用其中的Workbook()函数来创建一个新的Excel工作簿。可以通过为工作簿添加工作表并填充数据来绘制图表。
下面是一个使用openpyxl库和Workbook()函数绘制Excel文件图表的示例代码:
import openpyxl
from openpyxl import Workbook
from openpyxl.utils import get_column_letter
from openpyxl.drawing.image import Image
from openpyxl.chart import BarChart, Reference
# 创建一个新的工作簿
workbook = Workbook()
# 获取当前活动的工作表
worksheet = workbook.active
# 设置工作表的名称
worksheet.title = "Sales Data"
# 添加数据到工作表
data = [
['Product', 'Sales'],
['Product A', 100],
['Product B', 200],
['Product C', 150],
['Product D', 300],
]
for row in data:
worksheet.append(row)
# 创建一个柱状图
chart = BarChart()
# 设置图表的标题和数据范围
chart.title = "Sales Data"
values = Reference(worksheet, min_col=2, min_row=1, max_col=2, max_row=5)
categories = Reference(worksheet, min_col=1, min_row=2, max_row=5)
chart.add_data(values, titles_from_data=True)
chart.set_categories(categories)
# 将图表插入到工作表的特定位置
worksheet.add_chart(chart, "D1")
# 保存Excel文件
workbook.save("sales_data.xlsx")
上述代码首先导入需要的openpyxl库的模块,然后创建了一个新的工作簿。通过使用workbook.active,可以获得当前活动的工作表。接下来,使用worksheet.title可以设置工作表的名称。
通过遍历data列表,可以将数据添加到工作表中,使用worksheet.append(row)可以将每个行数据添加到工作表的末尾。
然后,创建了一个柱状图并设置了标题和数据范围。使用Reference()函数指定绘图所需的数据范围,并将其添加到图表中。
最后,使用worksheet.add_chart()函数将图表插入到工作表的指定位置。
最后保存Excel文件,使用workbook.save()函数指定文件名。
以上示例代码将会创建一个名为"sales_data.xlsx"的Excel文件,并在工作表中绘制了柱状图。
