Python用Spire.XLS操作Excel圖表的高階教程
在日常工作中,您是否遇到過這些挑戰(zhàn):
- 需要分析圖表背后的原始數(shù)據(jù)卻無從下手?
- 圖表尺寸不合適遮擋了關(guān)鍵信息?
- 圖表位置不合理破壞了報(bào)告布局?
- 過時(shí)圖表占用空間影響工作簿整潔?
本文將使用強(qiáng)大的 Spire.XLS for Python 庫,通過具體場(chǎng)景演示如何通過 Spire.XLS 的表操作語句,高效解決提取數(shù)據(jù)源、調(diào)整表大小、移動(dòng)和刪除圖表的實(shí)際操作。
準(zhǔn)備工作
本教程將圍繞 Spire.XLS for Python 庫展開。作為一個(gè)完善的 Python 拓展庫,它提供的 API 允許我們使用純代碼對(duì) Excel 文件進(jìn)行各類操作,同時(shí)不依賴于諸如 Microsoft Excel、WPS Office 的外部軟件。
你可以通過以下 pip 命令將它們輕松安裝到 Windows 中。
pip install spire.xls
或者從 Spire.XLS for Python 下載 安裝文件,解壓縮后從“lib”文件夾中獲取 .whl 文件,再使用 pip 的 install 語句從 .whl 文件安裝,可以達(dá)到一樣的效果。
Spire.XLS for Python 官方在官方網(wǎng)站提供了詳細(xì)的教程文檔,如果還是不清楚如何安裝,你可以嘗試訪問 安裝指南并尋求幫助。
Python 提取 Excel 圖表的數(shù)據(jù)源
當(dāng)銷售報(bào)告的原始數(shù)據(jù)分布在多個(gè)工作表中難以查找時(shí),手動(dòng)操作費(fèi)時(shí)且易錯(cuò)。使用 Spire.XLS for Python 可快速獲取數(shù)據(jù)源,它提供了 Chart.DataRange 屬性,使你能夠輕松訪問圖表所使用的單元格范圍,從而獲取其中的數(shù)據(jù)。
關(guān)鍵步驟如下:
- 使用 Workbook.LoadFromFile() 方法加載 Excel 文件。
- 通過 Workbook.Worksheets[index] 屬性獲取包含圖表的工作表。
- 使用 Worksheet.Charts[index] 屬性獲取圖表。
- 使用 Chart.DataRange 屬性獲取圖表的數(shù)據(jù)單元格范圍。
- 遍歷單元格范圍中的行和列,獲取每個(gè)單元格的數(shù)據(jù)。
from spire.xls import *
from spire.xls.common import *
# 創(chuàng)建 Workbook 對(duì)象
workbook = Workbook()
# 加載 Excel 文件
workbook.LoadFromFile("Microsoft Excel 工作表.xlsx")
# 獲取包含圖表的工作表
sheet = workbook.Worksheets[0]
# 獲取圖表
chart = sheet.Charts[0]
# 獲取圖表使用的數(shù)據(jù)單元格范圍
cellRange = chart.DataRange
# 遍歷單元格范圍中的行和列
for i in range(len(cellRange.Rows)):
for j in range(len(cellRange.Rows[i].Columns)):
# 獲取每個(gè)單元格的數(shù)據(jù)
print(cellRange[i + 1, j + 1].Value + " ", end='')
print("")
workbook.Dispose()
提取圖表的數(shù)據(jù)源
Python 調(diào)整 Excel 圖表的大小
圖表尺寸過大遮擋摘要信息或過小導(dǎo)致數(shù)據(jù)標(biāo)簽難以辨認(rèn)?通過 Chart.Width 和 Chart.Height 屬性,Spire.XLS for Python 讓批量調(diào)整圖表尺寸變得簡(jiǎn)單高效。
關(guān)鍵步驟如下:
- 使用 Workbook.LoadFromFile() 方法加載 Excel 文件。
- 通過 Workbook.Worksheets[index] 屬性獲取包含圖表的工作表。
- 使用 Worksheet.Charts[index] 屬性獲取圖表。
- 使用 Chart.Width 和 Chart.Height 屬性調(diào)整圖表的尺寸。
- 使用 Workbook.SaveToFile() 方法保存結(jié)果文件。
from spire.xls import *
from spire.xls.common import *
# 創(chuàng)建 Workbook 對(duì)象
workbook = Workbook()
# 加載 Excel 文件
workbook.LoadFromFile("Microsoft Excel 工作表.xlsx")
# 獲取包含圖表的工作表
sheet = workbook.Worksheets[0]
# 獲取圖表
chart = sheet.Charts[0]
# 調(diào)整圖表大小
chart.Width = 450
chart.Height = 300
# 保存結(jié)果文件
workbook.SaveToFile("調(diào)整圖表大小.xlsx", ExcelVersion.Version2016)
workbook.Dispose()
調(diào)整圖表大小
Python 移動(dòng) Excel 圖表
當(dāng)圖表遮擋關(guān)鍵數(shù)據(jù)或破壞整體布局時(shí),特別是從模板生成的報(bào)告,Spire.XLS for Python 提供精準(zhǔn)的定位解決方案。使用它提供的 Chart.LeftColumn、Chart.TopRow、Chart.RightColumn 和 Chart.BottomRow 屬性,你可以將圖表移動(dòng)到新的位置。
關(guān)鍵步驟如下:
- 使用 Workbook.LoadFromFile() 方法加載 Excel 文件。
- 通過 Workbook.Worksheets[index] 屬性獲取包含圖表的工作表。
- 使用 Worksheet.Charts[index] 屬性獲取圖表。
- 使用 Chart.LeftColumn、Chart.TopRow、Chart.RightColumn 和 Chart.BottomRow 屬性設(shè)置圖表的新位置。
- 使用 Workbook.SaveToFile() 方法保存結(jié)果文件。
from spire.xls import *
from spire.xls.common import *
# 創(chuàng)建 Workbook 對(duì)象
workbook = Workbook()
# 加載 Excel 文件
workbook.LoadFromFile("Microsoft Excel 工作表.xlsx")
# 獲取包含圖表的工作表
sheet = workbook.Worksheets[0]
# 獲取圖表
chart = sheet.Charts[0]
# 設(shè)置圖表的新位置(起始列、起始行、結(jié)束列、結(jié)束行)
chart.LeftColumn = 1
chart.TopRow = 8
chart.RightColumn = 8
chart.BottomRow = 24
# 保存結(jié)果文件
workbook.SaveToFile("移動(dòng)圖表.xlsx", ExcelVersion.Version2016)
workbook.Dispose()
移動(dòng)圖表
Python 刪除 Excel 圖表
長(zhǎng)期使用的模板積累過時(shí)圖表會(huì)導(dǎo)致文件臃腫、打開緩慢。Spire.XLS for Python 的 Chart.Remove() 方法可批量清理無用圖表,讓文件保持整潔。
關(guān)鍵步驟如下:
- 使用 Workbook.LoadFromFile() 方法加載 Excel 文件。
- 通過 Workbook.Worksheets[index] 屬性獲取包含圖表的工作表。
- 使用 Worksheet.Charts[index] 屬性獲取圖表。
- 使用 Chart.Remove() 方法刪除圖表。
- 使用 Workbook.SaveToFile() 方法保存結(jié)果文件。
from spire.xls import *
from spire.xls.common import *
# 創(chuàng)建 Workbook 對(duì)象
workbook = Workbook()
# 加載 Excel 文件
workbook.LoadFromFile("Microsoft Excel 工作表.xlsx")
# 獲取包含圖表的工作表
sheet = workbook.Worksheets[0]
# 獲取圖表
chart = sheet.Charts[0]
# 刪除圖表
chart.Remove()
# 保存結(jié)果文件
workbook.SaveToFile("刪除圖表.xlsx", ExcelVersion.Version2016)
workbook.Dispose()
刪除圖表
結(jié)語
通過掌握 Spire.XLS for Python 的圖表操作技術(shù),您可以:
- 讓圖表數(shù)據(jù)提取時(shí)間顯著縮短
- 批量調(diào)整大量圖表尺寸只需單次運(yùn)行
- 精準(zhǔn)定位圖表位置避免手動(dòng)拖拽誤差
- 智能清理過時(shí)圖表節(jié)省存儲(chǔ)空間
這些技能特別適用于定期生成報(bào)告、批量處理文檔和維護(hù)大型Excel模板等場(chǎng)景,讓您將精力集中在數(shù)據(jù)分析而非格式調(diào)整上。
到此這篇關(guān)于Python用Spire.XLS操作Excel圖表的高階教程的文章就介紹到這了,更多相關(guān)Python Spire.XLS操作Excel內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python批量將圖片灰度化的實(shí)現(xiàn)代碼
這篇文章主要介紹了Python批量將圖片灰度化的實(shí)現(xiàn)代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04
Linux(Redhat)安裝python3.6虛擬環(huán)境(推薦)
這篇文章主要介紹了Linux(Redhat)安裝python3.6虛擬環(huán)境,非常不錯(cuò),具有參考借鑒價(jià)值 ,需要的朋友可以參考下2018-05-05
用python給csv里的數(shù)據(jù)排序的具體代碼
在本文里小編給大家分享的是關(guān)于用python給csv里的數(shù)據(jù)排序的具體代碼內(nèi)容,需要的朋友們可以學(xué)習(xí)下。2020-07-07
python Pandas中數(shù)據(jù)的合并與分組聚合
大家好,本篇文章主要講的是python Pandas中數(shù)據(jù)的合并與分組聚合,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下2022-01-01
詳解Python網(wǎng)絡(luò)框架Django和Scrapy安裝指南
這篇文章主要介紹了詳解Python網(wǎng)絡(luò)框架Django和Scrapy安裝指南,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-04-04
Python創(chuàng)建普通菜單示例【基于win32ui模塊】
這篇文章主要介紹了Python創(chuàng)建普通菜單,結(jié)合實(shí)例形式分析了Python基于win32ui模塊創(chuàng)建普通菜單及添加菜單項(xiàng)的相關(guān)操作技巧,并附帶說明了win32ui模塊的安裝命令,需要的朋友可以參考下2018-05-05
python寫入csv時(shí)writerow()和writerows()函數(shù)簡(jiǎn)單示例
這篇文章主要給大家介紹了關(guān)于python寫入csv時(shí)writerow()和writerows()函數(shù)的相關(guān)資料,writerows和writerow是Python中csv模塊中的兩個(gè)函數(shù),用于將數(shù)據(jù)寫入CSV文件,需要的朋友可以參考下2023-07-07

