最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python Excel高階教程之使用 Spire.XLS創(chuàng)建雷達(dá)圖和折線圖

 更新時(shí)間:2025年08月13日 10:29:10   作者:E-iceblue  
Spire.XLS for Python 庫提供了便捷的圖表創(chuàng)建功能,讓開發(fā)者能夠僅用幾行代碼就創(chuàng)建各種如柱形圖、條形圖等專業(yè)圖表,下面就跟隨小編一起來看看具體實(shí)現(xiàn)方法吧

在日常工作中,我們經(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 自動(dòng)生成標(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òng)生成填充雷達(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 自動(dòng)生成簡單折線圖)

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 自動(dòng)生成堆積折線圖)

三、總結(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工作表中自動(dòng)創(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)簽,避免圖表過度擁擠
  • 自動(dòng)化:結(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利用sched模塊實(shí)現(xiàn)定時(shí)任務(wù)

    Python利用sched模塊實(shí)現(xiàn)定時(shí)任務(wù)

    今天我們來介紹一下Python當(dāng)中的定時(shí)任務(wù),主要用到的模塊是sched,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-04-04
  • 使用Python實(shí)現(xiàn)pdf轉(zhuǎn)圖片再進(jìn)行OCR識別

    使用Python實(shí)現(xiàn)pdf轉(zhuǎn)圖片再進(jìn)行OCR識別

    這篇文章主要為大家詳細(xì)介紹了如何使用Python實(shí)現(xiàn)pdf轉(zhuǎn)圖片再進(jìn)行OCR識別功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-04-04
  • Python代碼實(shí)現(xiàn)圖形界面的7種方法整理

    Python代碼實(shí)現(xiàn)圖形界面的7種方法整理

    這篇文章主要為大家詳細(xì)介紹了如何僅用一行代碼就能創(chuàng)建令人印象深刻的圖形用戶界面(GUI),Python中一般有7種常用方法,下面小編就為大家詳細(xì)介紹一下它們的具體使用吧
    2025-10-10
  • 利用Pycharm斷點(diǎn)調(diào)試Python程序的方法

    利用Pycharm斷點(diǎn)調(diào)試Python程序的方法

    今天小編就為大家分享一篇利用Pycharm斷點(diǎn)調(diào)試Python程序的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • Python+matplotlib繪制條形圖和直方圖

    Python+matplotlib繪制條形圖和直方圖

    Matplotlib是Python的繪圖庫,它能讓使用者很輕松地將數(shù)據(jù)圖形化,并且提供多樣化的輸出格式。本文將為大家介紹如何用matplotlib繪制條形圖和直方圖,感興趣的朋友可以學(xué)習(xí)一下
    2022-04-04
  • 啥是佩奇?使用Python自動(dòng)繪畫小豬佩奇的代碼實(shí)例

    啥是佩奇?使用Python自動(dòng)繪畫小豬佩奇的代碼實(shí)例

    今天小編就為大家分享一篇關(guān)于啥是佩奇?使用Python自動(dòng)繪畫小豬佩奇的代碼實(shí)例,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • pandas 實(shí)現(xiàn)將NaN轉(zhuǎn)換為None

    pandas 實(shí)現(xiàn)將NaN轉(zhuǎn)換為None

    這篇文章主要介紹了pandas 實(shí)現(xiàn)將NaN轉(zhuǎn)換為None的操作,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python技巧之實(shí)現(xiàn)批量統(tǒng)一圖片格式和尺寸

    Python技巧之實(shí)現(xiàn)批量統(tǒng)一圖片格式和尺寸

    大家在工作的時(shí)候基本都會(huì)接觸到很多的圖片,有時(shí)為了不同的工作需求需要修改圖片的尺寸或者大小。本文為大家整理了Python批量轉(zhuǎn)換圖片格式和統(tǒng)一圖片尺寸,希望對大家有所幫助
    2023-05-05
  • Python寫一個(gè)簡單的在線編輯器

    Python寫一個(gè)簡單的在線編輯器

    這篇文章主要介紹了如何利用Python寫一個(gè)簡單的在線編輯器,主要通過pywebio程序,實(shí)現(xiàn)了Python的簡陋在線編輯器,需要的小伙伴可以參考一下,希望對你有所幫助
    2022-02-02
  • Python中uuid模塊的應(yīng)用實(shí)例詳解

    Python中uuid模塊的應(yīng)用實(shí)例詳解

    這篇文章主要介紹了Python中uuid模塊應(yīng)用的相關(guān)資料,該模塊提供了多種方法生成UUID,包括uuid1()、uuid3()、uuid4()和uuid5(),并解釋了UUID的格式,UUID在數(shù)據(jù)庫、分布式系統(tǒng)和網(wǎng)絡(luò)協(xié)議中廣泛應(yīng)用,是處理唯一標(biāo)識符的有力工具,需要的朋友可以參考下
    2024-11-11

最新評論

敖汉旗| 南安市| 封丘县| 白玉县| 兴和县| 南宫市| 石林| 光泽县| 保山市| 金堂县| 武陟县| 舟山市| 卢氏县| 湖南省| 句容市| 乌苏市| 甘孜| 南丹县| 连平县| 杭州市| 嘉义县| 苍山县| 宁武县| 墨竹工卡县| 永新县| 卓尼县| 英德市| 香港| 五大连池市| 集安市| 咸宁市| 体育| 民县| 甘孜县| 英超| 六安市| 瓮安县| 社会| 响水县| 青州市| 沅江市|