Python Excel高階教程之使用 Spire.XLS創(chuàng)建雷達(dá)圖和折線圖
在日常工作中,我們經(jīng)常有著這樣的場景需求:
- 需要對比多個(gè)產(chǎn)品在多個(gè)維度(如性能、價(jià)格、用戶體驗(yàn))的表現(xiàn)
- 分析銷售數(shù)據(jù)隨時(shí)間變化的趨勢,識別峰值和低谷
- 展示員工能力評估結(jié)果,直觀呈現(xiàn)各維度得分
- 追蹤項(xiàng)目進(jìn)度,可視化各階段完成情況
面對錯(cuò)綜繁雜的海量數(shù)據(jù)時(shí),光靠眼睛看一個(gè)個(gè)單元格是效率極低的。因此,我們需要一種高效的方法來處理這些數(shù)據(jù):圖表是 Excel 中強(qiáng)大的數(shù)據(jù)可視化工具,而 Spire.XLS for Python 庫提供了便捷的圖表創(chuàng)建功能,讓開發(fā)者能夠僅用幾行代碼就創(chuàng)建各種如柱形圖、條形圖、雷達(dá)圖、折線圖等的專業(yè)圖表。這次就讓我們來學(xué)習(xí),如何使用 Spire.XLS 創(chuàng)建雷達(dá)圖和折線圖。
前期準(zhǔn)備
Spire.XLS for Python 庫是本教程的中心,它提供的 API 允許我們在 Python 中對 Excel 文件進(jìn)行各類操作,同時(shí)不依賴于外部軟件,如 Microsoft Excel。
你可以通過以下 pip 命令將它們輕松安裝到 Windows 中。
pip install spire.xls
或者通過 Spire.XLS for Python 下載 壓縮文件,解壓縮后從“lib”文件夾中獲取 .whl 文件,再使用 pip 的 install 語句從 .whl 文件安裝就可以了。
Spire.XLS for Python 官方在官方網(wǎng)站提供了詳細(xì)的教程文檔,如果還是不清楚如何安裝,你可以嘗試訪問安裝指南并尋求幫助。
一、雷達(dá)圖
雷達(dá)圖又稱蜘蛛圖,是一種顯示二維多元數(shù)據(jù)的圖形方法。圖表上的每個(gè)輻條代表一個(gè)不同的變量,數(shù)據(jù)點(diǎn)沿著這些輻條繪制。雷達(dá)圖尤其適用于比較不同實(shí)體在多個(gè)標(biāo)準(zhǔn)中的表現(xiàn)。本段將演示如何使用 Spire.XLS for Python 通過 Python 在 Excel 中創(chuàng)建兩類雷達(dá)圖。
應(yīng)用場景:
- 標(biāo)準(zhǔn)雷達(dá)圖:多維數(shù)據(jù)對比(員工能力評估、產(chǎn)品特性比較)
- 填充雷達(dá)圖:突出數(shù)據(jù)覆蓋區(qū)域(能力范圍、產(chǎn)品特性覆蓋)
Python 創(chuàng)建標(biāo)準(zhǔn)雷達(dá)圖
當(dāng)你想要對比幾件產(chǎn)品在多個(gè)維度的表現(xiàn)時(shí),又或是表現(xiàn)幾個(gè)方案在多個(gè)方面的優(yōu)劣時(shí),標(biāo)準(zhǔn)雷達(dá)圖可以將數(shù)據(jù)可視化為圖形,用簡單的多色折線表示數(shù)據(jù)的相對于頂點(diǎn)或其他數(shù)據(jù)的高低,一目了然。 Spire.XLS for Python 提供了 Worksheet.Charts.Add(ExcelChartType.Radar) 方法,用于在 Excel 工作表中添加標(biāo)準(zhǔn)雷達(dá)圖。
關(guān)鍵步驟如下:
- 創(chuàng)建一個(gè) Workbook 對象。
- 使用 Workbook.LoadFromFile() 方法加載一個(gè)待處理的 Excel 文件
- 使用 Workbook.Worksheets[index] 屬性獲取指定工作表。
- 使用 Worksheet.Charts.Add(ExcelChartType.Radar) 方法在工作表中添加一個(gè)簡單的雷達(dá)圖。
- 使用 Chart.DataRange 屬性設(shè)置圖表數(shù)據(jù)范圍。
- 設(shè)置圖表的位置、圖例和標(biāo)題。
- 使用 Workbook.SaveToFile() 方法保存結(jié)果文件。
from spire.xls import *
from spire.xls.common import *
# 創(chuàng)建 Workbook 對象
workbook = Workbook()
# 加載Excel文件
workbook.LoadFromFile("Microsoft Excel 工作表.xlsx")
# 獲取第一個(gè)工作表
sheet = workbook.Worksheets[0]
# 在工作表中添加雷達(dá)圖
chart = sheet.Charts.Add(ExcelChartType.Radar)
# 設(shè)置圖標(biāo)位置
chart.LeftColumn = 7
chart.TopRow = 2
chart.RightColumn = 15
chart.BottomRow = 22
# 設(shè)置圖標(biāo)的數(shù)據(jù)源
chart.DataRange = sheet.Range["A2:D8"]
chart.SeriesDataFromRange = False
# 設(shè)置圖表標(biāo)題
chart.ChartTitle = "某公司員工培訓(xùn)成績圖"
chart.ChartTitleArea.IsBold = True
chart.ChartTitleArea.Size = 18
chart.PlotArea.Fill.Visible = False
chart.Legend.Position = LegendPositionType.Corner
# 保存結(jié)果文件
workbook.SaveToFile("標(biāo)準(zhǔn)雷達(dá)圖.xlsx", ExcelVersion.Version2016)
workbook.Dispose()
(Python 自動生成標(biāo)準(zhǔn)雷達(dá)圖)
Python 創(chuàng)建填充雷達(dá)圖
填充雷達(dá)圖是標(biāo)準(zhǔn)雷達(dá)圖的一種變體,不同之處在于每個(gè)數(shù)據(jù)點(diǎn)之間的區(qū)域用顏色填充。
關(guān)鍵步驟如下:
- 創(chuàng)建一個(gè) Workbook 對象。
- 使用 Workbook.LoadFromFile() 方法加載一個(gè)待處理的 Excel 文件
- 使用 Workbook.Worksheets[index] 屬性獲取指定工作表。
- 使用 Worksheet.Charts.Add(ExcelChartType.RadarFilled) 方法在工作表中添加一個(gè)填充雷達(dá)圖。
- 使用 Chart.DataRange 屬性設(shè)置圖表數(shù)據(jù)范圍。
- 設(shè)置圖表的位置、圖例和標(biāo)題。
- 使用 Workbook.SaveToFile() 方法保存結(jié)果文件。
from spire.xls import *
from spire.xls.common import *
# 創(chuàng)建 Workbook 對象
workbook = Workbook()
# 加載Excel文件
workbook.LoadFromFile("Microsoft Excel 工作表 1.xlsx")
# 獲取第一個(gè)工作表
sheet = workbook.Worksheets[0]
# 在工作表中添加雷達(dá)圖
chart = sheet.Charts.Add(ExcelChartType.RadarFilled)
# 設(shè)置圖標(biāo)位置
chart.LeftColumn = 7
chart.TopRow = 2
chart.RightColumn = 15
chart.BottomRow = 22
# 設(shè)置圖標(biāo)的數(shù)據(jù)源
chart.DataRange = sheet.Range["A2:D8"]
chart.SeriesDataFromRange = False
# 設(shè)置圖表標(biāo)題
chart.ChartTitle = "某公司員工培訓(xùn)成績圖"
chart.ChartTitleArea.IsBold = True
chart.ChartTitleArea.Size = 18
chart.PlotArea.Fill.Visible = False
chart.Legend.Position = LegendPositionType.Corner
# 保存結(jié)果文件
workbook.SaveToFile("填充雷達(dá)圖.xlsx", ExcelVersion.Version2016)
workbook.Dispose()
(Python 自動生成填充雷達(dá)圖)
二、折線圖
折線圖是一種通過直線連接數(shù)據(jù)點(diǎn)來展示信息的圖表,特別適用于顯示隨時(shí)間變化的趨勢。例如,在跟蹤每月銷售數(shù)據(jù)時(shí),折線圖可以幫助識別趨勢、峰值和低谷。在本段中,我們將學(xué)習(xí)如何使用 Python 通過 Spire.XLS for Python 在 Excel 中創(chuàng)建兩類折線圖。
應(yīng)用場景:
- 簡單折線圖:時(shí)間序列趨勢分析(銷售趨勢、網(wǎng)站流量)
- 堆積折線圖:部分與整體關(guān)系分析(銷售貢獻(xiàn)占比、項(xiàng)目進(jìn)度)
Python 創(chuàng)建簡單折線圖
現(xiàn)在你要關(guān)注數(shù)款產(chǎn)品在某個(gè)季度每個(gè)月銷量的趨勢,又或者要查看某地?cái)?shù)個(gè)月以來的降雨量的變化趨勢,使用折線圖可以讓繁雜的數(shù)據(jù)變?yōu)橐锥膱D表,還能同時(shí)查看其他類別的數(shù)據(jù)在同一時(shí)刻的變化。 Spire.XLS for Python 提供了 Worksheet.Charts.Add(ExcelChartType.Line) 方法,可幫助你在 Excel 工作表中快速添加簡單折線圖。
關(guān)鍵步驟如下:
- 創(chuàng)建一個(gè) Workbook 對象。
- 使用 Workbook.LoadFromFile() 方法加載一個(gè)待處理的 Excel 文件
- 使用 Workbook.Worksheets[index] 屬性獲取指定工作表。
- 使用 Worksheet.Charts.Add(ExcelChartType.Line) 方法向工作表添加簡單折線圖。
- 通過 Chart.DataRange 屬性設(shè)置圖表數(shù)據(jù)范圍。
- 設(shè)置圖表的位置、標(biāo)題、坐標(biāo)軸及其它屬性。
- 使用 Workbook.SaveToFile() 方法保存文件。
from spire.xls import *
from spire.xls.common import *
# 創(chuàng)建 Workbook 對象
workbook = Workbook()
# 加載Excel文件
workbook.LoadFromFile("Microsoft Excel 工作表 2.xlsx")
# 獲取第一個(gè)工作表
sheet = workbook.Worksheets[0]
# 在工作表中添加折線圖
chart = sheet.Charts.Add(ExcelChartType.Line)
# 設(shè)置圖表數(shù)據(jù)范圍
chart.DataRange = sheet.Range["A2:E8"]
# 設(shè)置圖表的位置
chart.LeftColumn = 7
chart.TopRow = 2
chart.RightColumn = 14
chart.BottomRow = 18
# 設(shè)置并格式化圖表標(biāo)題
chart.ChartTitle = "某公司年度各地市銷售情況表(萬元)"
chart.ChartTitleArea.IsBold = True
chart.ChartTitleArea.Size = 16
# 設(shè)置圖表類別軸
chart.PrimaryCategoryAxis.Title = "季度"
chart.PrimaryCategoryAxis.Font.IsBold = True
chart.PrimaryCategoryAxis.TitleArea.IsBold = True
# 設(shè)置圖表值軸
chart.PrimaryValueAxis.Title = "銷售額(萬元)"
chart.PrimaryValueAxis.HasMajorGridLines = False
chart.PrimaryValueAxis.TitleArea.TextRotationAngle = 90
chart.PrimaryValueAxis.MinValue = 100
chart.PrimaryValueAxis.TitleArea.IsBold = True
# 設(shè)置系列顏色和數(shù)據(jù)標(biāo)簽
for cs in chart.Series:
cs.Format.Options.IsVaryColor = True
cs.DataPoints.DefaultDataPoint.DataLabels.HasValue = True
# 設(shè)置圖例位置
chart.Legend.Position = LegendPositionType.Right
# 保存結(jié)果文件
workbook.SaveToFile("簡單折線圖.xlsx", ExcelVersion.Version2016)
workbook.Dispose()
(Python 自動生成簡單折線圖)
Python 創(chuàng)建堆積折線圖
現(xiàn)在你要在關(guān)注不同季度不同門店的銷售額的變化,同時(shí)還要注意不同季度間總銷售額的變化趨勢,堆積折線圖通過將每個(gè)類別的值堆積在一起,強(qiáng)調(diào)整體的總量變化,使數(shù)據(jù)系列對整體趨勢的貢獻(xiàn)更加直觀。 Spire.XLS for Python 提供了 Worksheet.Charts.Add(ExcelChartType.LineStacked) 方法,讓我們可以在 Excel 工作表中添加堆積折線圖。
關(guān)鍵步驟如下:
- 創(chuàng)建一個(gè) Workbook 對象。
- 使用 Workbook.LoadFromFile() 方法加載一個(gè)待處理的 Excel 文件
- 使用 Workbook.Worksheets[index] 屬性獲取指定工作表。
- 使用 Worksheet.Charts.Add(ExcelChartType.LineStacked) 方法在工作表中添加堆積折線圖。
- 通過 Chart.DataRange 屬性設(shè)置圖表數(shù)據(jù)范圍。
- 設(shè)置圖表的位置、標(biāo)題、坐標(biāo)軸及其它屬性。
- 使用 Workbook.SaveToFile() 方法保存文件。
from spire.xls import *
from spire.xls.common import *
# 創(chuàng)建 Workbook 對象
workbook = Workbook()
# 加載Excel文件
workbook.LoadFromFile("Microsoft Excel 工作表 2.xlsx")
# 獲取第一個(gè)工作表
sheet = workbook.Worksheets[0]
# 在工作表中添加折線圖
chart = sheet.Charts.Add(ExcelChartType.LineStacked)
# 設(shè)置圖表數(shù)據(jù)范圍
chart.DataRange = sheet.Range["A2:E8"]
# 設(shè)置圖表的位置
chart.LeftColumn = 7
chart.TopRow = 2
chart.RightColumn = 14
chart.BottomRow = 18
# 設(shè)置并格式化圖表標(biāo)題
chart.ChartTitle = "某公司年度各地市銷售情況表(萬元)"
chart.ChartTitleArea.IsBold = True
chart.ChartTitleArea.Size = 16
# 設(shè)置圖表類別軸
chart.PrimaryCategoryAxis.Title = "季度"
chart.PrimaryCategoryAxis.Font.IsBold = True
chart.PrimaryCategoryAxis.TitleArea.IsBold = True
# 設(shè)置圖表值軸
chart.PrimaryValueAxis.Title = "銷售額(萬元)"
chart.PrimaryValueAxis.HasMajorGridLines = False
chart.PrimaryValueAxis.TitleArea.TextRotationAngle = 90
chart.PrimaryValueAxis.MinValue = 100
chart.PrimaryValueAxis.TitleArea.IsBold = True
# 設(shè)置系列顏色和數(shù)據(jù)標(biāo)簽
for cs in chart.Series:
cs.Format.Options.IsVaryColor = True
cs.DataPoints.DefaultDataPoint.DataLabels.HasValue = True
# 設(shè)置圖例位置
chart.Legend.Position = LegendPositionType.Right
# 保存結(jié)果文件
workbook.SaveToFile("堆積折線圖.xlsx", ExcelVersion.Version2016)
workbook.Dispose()
(Python 自動生成堆積折線圖)
三、總結(jié)與拓展
大家應(yīng)該都發(fā)現(xiàn)了,使用Spire.XLS for Python創(chuàng)建圖表,其語法大都很相似,在上面的四個(gè)示例中,我們分別創(chuàng)建了標(biāo)準(zhǔn)雷達(dá)圖、填充雷達(dá)圖、簡單折線圖和堆積折線圖,而代碼改變了的部分只有 sheet.Charts.Add() 中填充的 ExcelChartType 枚舉值。
- 標(biāo)準(zhǔn)雷達(dá)圖:ExcelChartType.Radar
- 填充雷達(dá)圖:ExcelChartType.RadarFilled
- 簡單折線圖:ExcelChartType.Line
- 堆積折線圖:ExcelChartType.LineStacked
這意味這什么?
實(shí)際上,我們在上一篇文章 Python Excel 高階教程:使用 Spire.XLS 創(chuàng)建柱形圖和條形圖 中已經(jīng)提到過一次這個(gè)特性了。我們當(dāng)時(shí)還整理了柱形圖和條形圖的 ExcelChartType 枚舉值:
- 簇狀柱形圖:ExcelChartType.ColumnClustered
- 堆疊柱形圖:ExcelChartType.ColumnStacked
- 簇狀條形圖:ExcelChartType.BarClustered
- 堆疊條形圖:ExcelChartType.BarStacked
意思是,Spire.XLS 的圖表操作實(shí)際上相當(dāng)重復(fù),于是我們可以利用這個(gè)特性,用函數(shù)配合循環(huán)來快速創(chuàng)建多個(gè)不同類型的基本圖表:
from spire.xls import *
from spire.xls.common import *
def AddExcelChart(FileNameIn: str, FileNameOut: str, ChartType: ExcelChartType,
DataRange: str, Title: str, TitleSize: int, TitleX: str,
TitleY: str, Legend: LegendPositionType):
# 創(chuàng)建 Workbook 對象,加載Excel文件,獲取第一個(gè)工作表
workbook = Workbook()
workbook.LoadFromFile(FileNameIn)
sheet = workbook.Worksheets[0]
# 添加圖表并設(shè)置基本屬性
chart = sheet.Charts.Add(ChartType)
chart.DataRange = sheet.Range[DataRange]
chart.LeftColumn = 7
chart.TopRow = 2
chart.RightColumn = 14
chart.BottomRow = 18
# 公共標(biāo)題設(shè)置
chart.ChartTitle = Title
chart.ChartTitleArea.IsBold = True
chart.ChartTitleArea.Size = TitleSize
# 圖表類型特定配置
config = {
ExcelChartType.Radar: lambda: [
setattr(chart, 'SeriesDataFromRange', False),
setattr(chart.PlotArea.Fill, 'Visible', False)
],
ExcelChartType.RadarFilled: lambda: [
setattr(chart, 'SeriesDataFromRange', False),
setattr(chart.PlotArea.Fill, 'Visible', False)
],
ExcelChartType.Line: lambda: axis_config(chart, TitleX, TitleY, 100),
ExcelChartType.LineStacked: lambda: axis_config(chart, TitleX, TitleY, 100),
ExcelChartType.ColumnClustered: lambda: column_config(chart, TitleX, TitleY),
ExcelChartType.ColumnStacked: lambda: column_config(chart, TitleX, TitleY),
ExcelChartType.BarClustered: lambda: bar_config(chart, TitleX, TitleY, 1000),
ExcelChartType.BarStacked: lambda: bar_config(chart, TitleX, TitleY, 1000)
}
# 應(yīng)用特定配置
if ChartType in config:
config[ChartType]()
# 公共圖例設(shè)置
chart.Legend.Position = Legend
# 保存并釋放資源
workbook.SaveToFile(FileNameOut, ExcelVersion.Version2016)
workbook.Dispose()
# 輔助函數(shù):坐標(biāo)軸配置
def axis_config(chart, title_x, title_y, min_val):
# 分類軸設(shè)置
if title_x:
chart.PrimaryCategoryAxis.Title = title_x
chart.PrimaryCategoryAxis.Font.IsBold = True
chart.PrimaryCategoryAxis.TitleArea.IsBold = True
# 數(shù)值軸設(shè)置
if title_y:
chart.PrimaryValueAxis.Title = title_y
chart.PrimaryValueAxis.TitleArea.TextRotationAngle = 90
chart.PrimaryValueAxis.TitleArea.IsBold = True
chart.PrimaryValueAxis.HasMajorGridLines = False
chart.PrimaryValueAxis.MinValue = min_val
# 系列設(shè)置
for series in chart.Series:
series.Format.Options.IsVaryColor = True
series.DataPoints.DefaultDataPoint.DataLabels.HasValue = True
# 輔助函數(shù):柱形圖配置
def column_config(chart, title_x, title_y):
chart.SeriesDataFromRange = False
# 坐標(biāo)軸設(shè)置
if title_x:
chart.PrimaryCategoryAxis.Title = title_x
chart.PrimaryCategoryAxis.Font.IsBold = True
chart.PrimaryCategoryAxis.TitleArea.IsBold = True
if title_y:
chart.PrimaryValueAxis.Title = title_y
chart.PrimaryValueAxis.TitleArea.TextRotationAngle = 90
chart.PrimaryValueAxis.TitleArea.IsBold = True
chart.PrimaryValueAxis.HasMajorGridLines = False
# 系列設(shè)置
for series in chart.Series:
series.Format.Options.IsVaryColor = True
series.Format.Options.GapWidth = 270
series.DataPoints.DefaultDataPoint.DataLabels.HasValue = True
series.DataPoints.DefaultDataPoint.DataLabels.Position = DataLabelPositionType.Inside
# 輔助函數(shù):條形圖配置
def bar_config(chart, title_x, title_y, min_val):
chart.SeriesDataFromRange = False
# 坐標(biāo)軸設(shè)置
if title_x:
chart.PrimaryCategoryAxis.Title = title_x
chart.PrimaryCategoryAxis.Font.IsBold = True
chart.PrimaryCategoryAxis.TitleArea.IsBold = True
chart.PrimaryCategoryAxis.TitleArea.TextRotationAngle = 90
if title_y:
chart.PrimaryValueAxis.Title = title_y
chart.PrimaryValueAxis.TitleArea.IsBold = True
chart.PrimaryValueAxis.HasMajorGridLines = False
chart.PrimaryValueAxis.MinValue = min_val
# 系列設(shè)置
for series in chart.Series:
series.Format.Options.IsVaryColor = True
series.DataPoints.DefaultDataPoint.DataLabels.HasValue = True
# 示例使用
if __name__ == "__main__":
# 配置參數(shù)
configs = [
{
"in": "Microsoft Excel 工作表 1.xlsx",
"out": "標(biāo)準(zhǔn)雷達(dá)圖.xlsx",
"type": ExcelChartType.Radar,
"range": "A2:D8",
"title": "某公司員工培訓(xùn)成績圖",
"size": 18,
"x": "",
"y": "",
"legend": LegendPositionType.Corner
},
{
"in": "Microsoft Excel 工作表 1.xlsx",
"out": "填充雷達(dá)圖.xlsx",
"type": ExcelChartType.RadarFilled,
"range": "A2:D8",
"title": "某公司員工培訓(xùn)成績圖",
"size": 18,
"x": "",
"y": "",
"legend": LegendPositionType.Corner
},
{
"in": "Microsoft Excel 工作表 2.xlsx",
"out": "簡單折線圖.xlsx",
"type": ExcelChartType.Line,
"range": "A2:E8",
"title": "某公司年度各地市銷售情況表(萬元)",
"size": 16,
"x": "季度",
"y": "銷售額(萬元)",
"legend": LegendPositionType.Right
},
{
"in": "Microsoft Excel 工作表 2.xlsx",
"out": "堆積折線圖.xlsx",
"type": ExcelChartType.LineStacked,
"range": "A2:E8",
"title": "某公司年度各地市銷售情況表(萬元)",
"size": 16,
"x": "季度",
"y": "銷售額(萬元)",
"legend": LegendPositionType.Right
},
{
"in": "Microsoft Excel 工作表.xlsx",
"out": "簇狀柱形圖.xlsx",
"type": ExcelChartType.ColumnClustered,
"range": "A1:D6",
"title": "兒童網(wǎng)絡(luò)書店圖書銷售情況圖",
"size": 18,
"x": "圖書類別",
"y": "銷售額",
"legend": LegendPositionType.Right
},
{
"in": "Microsoft Excel 工作表.xlsx",
"out": "堆疊柱形圖.xlsx",
"type": ExcelChartType.ColumnStacked,
"range": "A1:D6",
"title": "兒童網(wǎng)絡(luò)書店圖書銷售情況圖",
"size": 18,
"x": "圖書類別",
"y": "銷售額",
"legend": LegendPositionType.Right
},
{
"in": "Microsoft Excel 工作表.xlsx",
"out": "簇狀條形圖.xlsx",
"type": ExcelChartType.BarClustered,
"range": "A1:D6",
"title": "兒童網(wǎng)絡(luò)書店圖書銷售情況圖",
"size": 18,
"x": "圖書類別",
"y": "銷售額",
"legend": LegendPositionType.Right
},
{
"in": "Microsoft Excel 工作表.xlsx",
"out": "堆疊條形圖.xlsx",
"type": ExcelChartType.BarStacked,
"range": "A1:D6",
"title": "兒童網(wǎng)絡(luò)書店圖書銷售情況圖",
"size": 18,
"x": "圖書類別",
"y": "銷售額",
"legend": LegendPositionType.Right
}
]
# 批量創(chuàng)建圖表
for cfg in configs:
AddExcelChart(
FileNameIn=cfg["in"],
FileNameOut=cfg["out"],
ChartType=cfg["type"],
DataRange=cfg["range"],
Title=cfg["title"],
TitleSize=cfg["size"],
TitleX=cfg["x"],
TitleY=cfg["y"],
Legend=cfg["legend"]
)本段中我們定義了一個(gè)函數(shù) AddExcelChart,可以在Excel工作表中自動創(chuàng)建和配置各種類型圖表。

(函數(shù) AddExcelChart 處理邏輯的主要流程圖)

(函數(shù) AddExcelChart 處理邏輯的子流程圖)
該函數(shù)簡化了使用 Spire.XLS 庫創(chuàng)建專業(yè)圖表的過程,適合批量生成多種類型的圖表。 在實(shí)際使用的時(shí)候可以根據(jù)需要,將函數(shù)參數(shù)進(jìn)行修改,來生成所需的圖表。
結(jié)語
本文通過實(shí)戰(zhàn)案例展示了如何使用 Spire.XLS for Python 創(chuàng)建專業(yè)級雷達(dá)圖和折線圖:
最佳實(shí)踐建議:
- 數(shù)據(jù)準(zhǔn)備:確保數(shù)據(jù)清潔,結(jié)構(gòu)清晰(類別在前,數(shù)值在后)
- 顏色選擇:使用對比明顯的顏色方案,提高可讀性
- 標(biāo)簽策略:重要數(shù)據(jù)點(diǎn)添加標(biāo)簽,避免圖表過度擁擠
- 自動化:結(jié)合 Spire.XLS 庫其他功能,封裝圖表創(chuàng)建函數(shù),實(shí)現(xiàn)一鍵規(guī)?;蓤?bào)表
Spire.XLS for Python 不僅支持雷達(dá)圖和折線圖,還支持創(chuàng)建餅圖、散點(diǎn)圖、直方圖等30+種圖表類型,滿足各種數(shù)據(jù)可視化需求。
通過本教程,我們可以將數(shù)據(jù)可視化效率提升數(shù)倍,將更多時(shí)間投入數(shù)據(jù)分析與決策,而非繁瑣的圖表制作過程。立即應(yīng)用這些技術(shù),讓你的數(shù)據(jù)報(bào)告更加專業(yè)、直觀!
以上就是Python Excel高階教程之使用 Spire.XLS創(chuàng)建雷達(dá)圖和折線圖的詳細(xì)內(nèi)容,更多關(guān)于Python創(chuàng)建雷達(dá)圖和折線圖的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
python爬蟲指南之xpath實(shí)例解析(附實(shí)戰(zhàn))
在進(jìn)行網(wǎng)頁抓取的時(shí)候,分析定位html節(jié)點(diǎn)是獲取抓取信息的關(guān)鍵,目前我用的是lxml模塊,下面這篇文章主要給大家介紹了關(guān)于python爬蟲指南之xpath實(shí)例解析的相關(guān)資料,需要的朋友可以參考下2022-01-01
Mac中PyCharm配置Anaconda環(huán)境的方法
這篇文章主要介紹了Mac中PyCharm配置Anaconda環(huán)境的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03
使用python編寫腳本獲取手機(jī)當(dāng)前應(yīng)用apk的信息
使用aapt工具獲取apk的信息,保存至腳本所在目錄下的PackageInfo.txt文件中,需要的朋友可以參考下2014-07-07
python日期時(shí)間轉(zhuǎn)為字符串或者格式化輸出的實(shí)例
今天小編就為大家分享一篇python日期時(shí)間轉(zhuǎn)為字符串或者格式化輸出的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-05-05
vscode 配置 python3開發(fā)環(huán)境的方法
這篇文章主要介紹了vscode 配置 python3開發(fā)環(huán)境的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09

