Stories

Detail Return Return

用Python將Excel文件中的圖表保存為圖片 - Stories Detail

Excel工作簿作為一款功能強大的數據處理與分析工具,被廣泛應用於各種領域,不僅能夠方便地組織和計算數據,還支持用户創建豐富多彩的圖表,直觀展示數據背後的洞察與趨勢。然而,在報告編制、網頁內容製作或分享數據分析成果時,直接嵌入整個Excel文件往往不夠便捷,且可能受限於接收者的軟件兼容性問題。而將Excel文件中的圖表保存為圖片格式(如PNG、JPEG等)則可以解決這些問題,不僅能確保圖表的顯示一致性跨平台,便於插入到PPT、文檔或網頁中,還能有效降低文件大小,加速在線傳輸與加載速度。本文將詳細介紹如何利用Python自動化實現從Excel文件中提取圖表並保存為圖片

  • 用Python將Excel文件中的圖表保存為圖片
  • 用Python將Excel圖表工作表保存為圖片

本文所使用的方法基於Spire.XLS for Python,PyPI:pip install Spire.XLS

申請免費License

用Python將Excel文件中的圖表保存為圖片

該庫中的Workbook.SaveChartAsImage()方法和Workbook.SaveChartAsEmfImage()方法能夠將圖片保存為圖片和EMF圖片流,之後我們再將圖片流保存到文件,即可實現提取圖表並保存為圖像的操作。
以下是操作步驟:

  1. 導入所需模塊。
  2. 創建Workbook對象並使用Workbook.LoadFromFile()方法載入Excel文件。
  3. 遍歷文件中的工作表,使用Workbook.Worksheets.get_Item()方法獲取工作表。
  4. 遍歷工作表中的圖表,使用Workbook.SaveChartAsImage().Save()方法將圖表保存到圖片文件。
  5. 釋放資源。

代碼示例

from spire.xls import *
from spire.xls.common import *

# 創建Workbook實例
workbook = Workbook()

# 載入Excel文件
workbook.LoadFromFile("示例.xlsx")

# 遍歷文件中的工作表
for i in range(0, workbook.Worksheets.Count):
    # 獲取工作表
    worksheet = workbook.Worksheets.get_Item(i)
    # 遍歷工作表中的圖表
    for j in range(0, worksheet.Charts.Count):
        # 將圖表保存為圖片
        chartImage = workbook.SaveChartAsImage(worksheet, j).Save(f"output/charts/chart{i+1}_{j+1}.png")

workbook.Dispose()

保存結果
Python保存Excel圖表為圖片

用Python將Excel圖表工作表保存為圖片

圖表工作表(Chart Sheet)是Excel工作簿中專門用於顯示圖表的一個獨立工作表類型,其中只包含一個圖表。我們可以使用Workbook.GetChartSheetByName()方法通過工作表名獲取指定圖表工作表,並使用Workbook.SaveChartAsImage(chartSheet: ChartSheet).Save()方法將其轉換為圖片並保存。以下是操作步驟:

  1. 導入所需模塊。
  2. 創建Workbook對象並使用Workbook.LoadFromFile()方法載入Excel文件。
  3. 使用Workbook.GetChartSheetByName()方法獲取指定圖表工作表。
  4. 使用Workbook.SaveChartAsImage().Save()方法將圖表工作表保存為圖像。
  5. 釋放資源。

代碼示例

from spire.xls import *
from spire.xls.common import *

# 創建一個Workbook實例
workbook = Workbook()

# 加載一個Excel文件
workbook.LoadFromFile("示例.xlsx")

# 獲取一個圖表工作表
chartSheet = workbook.GetChartSheetByName("圖表一")

# 將圖表工作表保存為圖片
workbook.SaveChartAsImage(chartSheet).Save("output/charts/chartsheet.png")

workbook.Dispose()

結果
Python保存Excel圖表工作表為圖片

本文介紹瞭如何使用Python將Excel工作簿中的圖表批量保存為圖片。

更多Excel文件操作技巧請前往Spire.XLS for Python教程查看。

user avatar incerry Avatar
Favorites 1 users favorite the story!
Favorites

Add a new Comments

Some HTML is okay.