我们常常使用 excel 中的图表和形状来直观地展示数据和信息,以增强数据的可读性和理解性。然而,在某些情况下,我们需要将这些图表和形状转换为图片,以便在其他文档、演示文稿或网页中使用。在这篇文章中,我们将介绍如何使用 spire.xls for python 和 python 将 excel 中的图表和形状转换为图片。
- python 将 excel 工作表中的特定图表转换为图片
- python 将 excel 工作表中的所有图表转换为图片
- python 将 excel 中的图表工作表转换为图片
- python 将 excel 中的形状转换为图片
安装 spire.xls for python
本教程需要 spire.xls for python 和 plum-dispatch v1.7.4。您可以通过以下 pip 命令将它们轻松安装到 windows 中。
pip install spire.xls
如果您不确定如何安装,请参考此教程: 如何在 windows 中安装 spire.xls for python
python 将 excel 工作表中的特定图表转换为图片
你可以使用 spire.xls for python 提供的 workbook.savechartasimage(worksheet: worksheet, chartindex: int) 方法将工作表中的特定图表转换为图片流。之后,你可以将此图片流保存为 png、jpg、bmp 等多种格式的图片文件。详细步骤如下:
- 创建 workbook 类的对象。
- 使用 workbook.loadfromfile() 方法加载 excel 文件。
- 使用 workbook.worksheets[] 属性获取文件中的特定工作表。
- 使用 workbook.savechartasimage(worksheet: worksheet, chartindex: int) 方法将工作表中的特定图表保存为图片流。
- 使用 stream.save() 方法将图片流保存为图片文件。
- python
from spire.xls import *
from spire.xls.common import *
# 创建 workbook 对象
workbook = workbook()
# 加载 excel 文件
workbook.loadfromfile("图表.xlsx")
# 获取第一个工作表
sheet = workbook.worksheets[0]
# 将工作表中的第一个图表保存为图片流
image_stream = workbook.savechartasimage(sheet, 0)
# 将图片流保存为 png 图片文件
image_stream.save("output/图表.png")
workbook.dispose()
python 将 excel 工作表中的所有图表转换为图片
要将 excel 工作表中的所有图表转换为图片,可以使用 workbook.savechartasimage(worksheet: worksheet) 方法。详细步骤如下:
- 创建 workbook 类的对象。
- 使用 workbook.loadfromfile() 方法加载 excel 文件。
- 使用 workbook.worksheets[] 属性获取文件中的特定工作表。
- 使用 workbook.savechartasimage(worksheet: worksheet) 方法将工作表中的所有图表保存为图片流列表。
- 遍历列表,将每个图片流保存为单独的图片文件。
- python
from spire.xls import *
from spire.xls.common import *
# 创建 workbook 对象
workbook = workbook()
# 加载 excel 文件
workbook.loadfromfile("图表.xlsx")
# 获取第一个工作表
sheet = workbook.worksheets[0]
# 将工作表中的图表保存为图片流列表
image_streams = workbook.savechartasimage(sheet)
# 将列表中的每个图片流保存为 png 图片文件
for i, image_stream in enumerate(image_streams):
image_stream.save(f"output/图表-{i}.png")
workbook.dispose()
python 将 excel 中的图表工作表转换为图片
在 microsoft excel 中,图表工作表是一种专门用于显示单个图表的特殊工作表。你可以使用 workbook.savechartasimage(chartsheet: chartsheet) 方法将 excel 工作簿中的特定图表工作表转换为图片。详细步骤如下:
- 创建 workbook 类的对象。
- 使用 workbook.loadfromfile() 方法加载 excel 文件。
- 使用 workbook.chartsheets[] 属性获取文件中的特定图表工作表。
- 使用 workbook.savechartasimage(chartsheet: chartsheet) 方法将图表工作表保存为图片流。
- 将图片流保存为图片文件。
- python
from spire.xls import *
from spire.xls.common import *
# 创建 workbook 对象
workbook = workbook()
# 加载 excel 文件
workbook.loadfromfile("图表工作表.xlsx")
# 获取第一个图表工作表
chart_sheet = workbook.chartsheets[0]
# 将图表工作表保存为图片流
image_stream = workbook.savechartasimage(chart_sheet)
# 将图片流保存为 png 图片文件
image_stream.save("output/图表工作表.png")
workbook.dispose()
python 将 excel 中的形状转换为图片
除了将图表或图表工作表转换为图片,你还可以使用 xlsshape.savetoimage() 方法将 excel 工作表中的形状转换为图片。详细步骤如下:
- 创建 workbook 类的对象。
- 使用 workbook.loadfromfile() 方法加载 excel 文件。
- 使用 workbook.worksheets[] 属性获取文件中的特定工作表。
- 遍历工作表中的所有形状。
- 将形状类型转换为 xlsshape 对象。
- 使用 xlsshape.savetoimage() 方法将形状保存为图片流。
- 将图片流保存为图片文件。
- python
from spire.xls import *
from spire.xls.common import *
# 创建 workbook 对象
workbook = workbook()
# 加载 excel 文件
workbook.loadfromfile("形状.xlsx")
# 获取第一个工作表
sheet = workbook.worksheets[0]
# 遍历工作表中的所有形状
for i, shape in enumerate(sheet.prstgeomshapes):
xls_shape = xlsshape(shape)
# 将形状保存为图片流
image_stream = shape.savetoimage()
# 将图片流保存为 png 图片文件
image_stream.save(f"output/形状_{i}.png")
workbook.dispose()
申请临时 license
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用javascript。获取有效期 30 天的临时许可证。