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

使用Python在Excel中創(chuàng)建組合圖的完整指南

 更新時(shí)間:2026年03月16日 09:31:35   作者:大丸子  
本文詳細(xì)介紹了如何使用Python和FreeSpire.XLSforPython創(chuàng)建組合圖表,包括柱狀圖和折線圖的設(shè)置,以及如何實(shí)現(xiàn)雙Y軸展示,組合圖適用于兩個(gè)量級(jí)差異較大的指標(biāo)展示,通過(guò)雙軸機(jī)制避免數(shù)值比例沖突,便于同時(shí)分析趨勢(shì)和規(guī)模,需要的朋友可以參考下

在實(shí)際業(yè)務(wù)報(bào)表中,我們經(jīng)常會(huì)遇到這樣一種場(chǎng)景:
兩個(gè)指標(biāo)存在關(guān)聯(lián),但量級(jí)差異較大。

例如:

  • 銷(xiāo)售額(金額)
  • 銷(xiāo)量(件數(shù))

如果將它們放在同一個(gè)縱軸上展示,要么銷(xiāo)量幾乎貼地不可見(jiàn),要么銷(xiāo)售額被壓縮失真。這時(shí),組合圖(Combo Chart)就是更專(zhuān)業(yè)的選擇。

組合圖允許:

  • 一個(gè)數(shù)據(jù)系列使用柱狀圖展示
  • 另一個(gè)數(shù)據(jù)系列使用折線圖展示
  • 同時(shí)支持雙 Y 軸

本文將完整演示如何使用 Python 創(chuàng)建組合圖表,如“柱狀圖 + 折線圖”,并實(shí)現(xiàn)雙 Y 軸展示。

示例基于 Free Spire.XLS for Python,可通過(guò) pip 安裝:

pip install spire.xls.free

1. 初始化工作簿與銷(xiāo)售數(shù)據(jù)

首先創(chuàng)建工作簿,并準(zhǔn)備示例數(shù)據(jù)結(jié)構(gòu)。

from spire.xls import *
# 創(chuàng)建工作簿
workbook = Workbook()
# 獲取工作表
sheet = workbook.Worksheets.get_Item(0)
sheet.Name = "銷(xiāo)售圖表演示"
# 設(shè)置表頭
sheet.Range["A1"].Text = "月份"
sheet.Range["B1"].Text = "銷(xiāo)售額"
sheet.Range["C1"].Text = "銷(xiāo)量"
# 示例數(shù)據(jù)
data = [
    ("1月", 12000, 300),
    ("2月", 18500, 420),
    ("3月", 15000, 360),
    ("4月", 21000, 500),
    ("5月", 19500, 460),
]
row = 2
for item in data:
    sheet.Range[f"A{row}"].Text = item[0]
    sheet.Range[f"B{row}"].NumberValue = item[1]
    sheet.Range[f"C{row}"].NumberValue = item[2]
    row += 1

注意事項(xiàng):

  • 銷(xiāo)售額與銷(xiāo)量必須使用 NumberValue
  • 否則圖表無(wú)法識(shí)別為數(shù)值型數(shù)據(jù)

2. 創(chuàng)建組合圖對(duì)象

# 添加圖表
chart = sheet.Charts.Add()
# 設(shè)置數(shù)據(jù)范圍
chart.DataRange = sheet.AllocatedRange
chart.SeriesDataFromRange = False
# 設(shè)置組合圖類(lèi)型
chart.ChartType = ExcelChartType.CombinationChart

關(guān)鍵點(diǎn)說(shuō)明:

  • CombinationChart 表示組合圖模式
  • SeriesDataFromRange = False 表示按列拆分?jǐn)?shù)據(jù)系列

3. 設(shè)置柱狀圖系列(銷(xiāo)售額)

sales_series = chart.Series.get_Item(0)
sales_series.SerieType = ExcelChartType.ColumnStacked
sales_series.Name = "銷(xiāo)售額($)"
sales_series.UsePrimaryAxis = True

說(shuō)明:

  • SerieType 控制該數(shù)據(jù)系列的圖表類(lèi)型
  • UsePrimaryAxis = True 表示使用主 Y 軸(左側(cè))

銷(xiāo)售額通常數(shù)值較大,適合使用柱狀圖進(jìn)行視覺(jué)強(qiáng)調(diào)。

4. 設(shè)置折線圖系列(銷(xiāo)量)

amount_series = chart.Series.get_Item(1)
amount_series.SerieType = ExcelChartType.LineMarkers
amount_series.Name = "銷(xiāo)量(個(gè))"
amount_series.UsePrimaryAxis = False

關(guān)鍵邏輯:

  • 折線圖更適合展示趨勢(shì)變化
  • UsePrimaryAxis = False 表示使用副 Y 軸(右側(cè))

通過(guò)雙軸機(jī)制,可以避免數(shù)值比例沖突。

5. 設(shè)置圖表位置與樣式

# 設(shè)置圖表位置
chart.LeftColumn = 4
chart.TopRow = 1
chart.RightColumn = 12
chart.BottomRow = 20
chart.ChartTitle = "2024年銷(xiāo)售趨勢(shì)"
chart.Legend.Position = LegendPositionType.Bottom

圖表位置通過(guò)單元格坐標(biāo)控制,這種方式比像素定位更穩(wěn)定。

6. 自動(dòng)調(diào)整列寬并保存文件

sheet.AllocatedRange.AutoFitColumns()
workbook.SaveToFile("CreateCombinationChart.xlsx", FileFormat.Version2016)
workbook.Dispose()

生成的 Excel 文件將包含:

  • 銷(xiāo)售數(shù)據(jù)表
  • 柱狀圖(銷(xiāo)售額)
  • 折線圖(銷(xiāo)量)
  • 雙 Y 軸結(jié)構(gòu)

無(wú)需手動(dòng)修改即可直接使用。

生成結(jié)果預(yù)覽:

常見(jiàn)組合圖注意事項(xiàng)

項(xiàng)目說(shuō)明
必須使用 CombinationChart否則無(wú)法混合圖表類(lèi)型
單獨(dú)設(shè)置每個(gè) SerieType控制不同圖形類(lèi)型
UsePrimaryAxis 控制雙軸True 為左軸,F(xiàn)alse 為右軸
數(shù)據(jù)必須為數(shù)值類(lèi)型使用 NumberValue

總結(jié)

組合圖并不是簡(jiǎn)單的“兩個(gè)圖疊加”,它是一種表達(dá)結(jié)構(gòu)關(guān)系的工具。

在自動(dòng)化報(bào)表系統(tǒng)中,如果僅生成單一圖表,往往難以滿足管理層對(duì)趨勢(shì)與規(guī)模同時(shí)分析的需求。而通過(guò) Python 自動(dòng)創(chuàng)建組合圖,我們可以:

  • 構(gòu)建更專(zhuān)業(yè)的分析報(bào)表
  • 自動(dòng)生成雙軸結(jié)構(gòu)
  • 提高數(shù)據(jù)表達(dá)的層次感
  • 在服務(wù)器端直接輸出完整可視化文件

借助 Python,我們無(wú)需打開(kāi) Excel 界面,即可構(gòu)建具備企業(yè)級(jí)視覺(jué)表達(dá)能力的分析報(bào)表。

當(dāng)自動(dòng)化系統(tǒng)開(kāi)始承擔(dān)經(jīng)營(yíng)分析任務(wù)時(shí),組合圖能力將成為報(bào)表系統(tǒng)的重要組成部分。掌握這一能力,意味著你不僅在生成數(shù)據(jù)文件,而是在輸出真正具備決策價(jià)值的業(yè)務(wù)圖形。

以上就是使用Python在Excel中創(chuàng)建組合圖的完整指南的詳細(xì)內(nèi)容,更多關(guān)于Python Excel創(chuàng)建組合圖的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 解決csv.writer寫(xiě)入文件有多余的空行問(wèn)題

    解決csv.writer寫(xiě)入文件有多余的空行問(wèn)題

    今天小編就為大家分享一篇解決csv.writer寫(xiě)入文件有多余的空行問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • OpenCV+Python3.5 簡(jiǎn)易手勢(shì)識(shí)別的實(shí)現(xiàn)

    OpenCV+Python3.5 簡(jiǎn)易手勢(shì)識(shí)別的實(shí)現(xiàn)

    這篇文章主要介紹了OpenCV+Python3.5 簡(jiǎn)易手勢(shì)識(shí)別的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Conda虛擬環(huán)境的復(fù)制和遷移過(guò)程

    Conda虛擬環(huán)境的復(fù)制和遷移過(guò)程

    本文介紹了四種在不同操作系統(tǒng)之間復(fù)制和遷移Conda虛擬環(huán)境的方法,包括使用requirements.txt、environment.yml、CondaPack和直接復(fù)制envs目錄下的虛擬環(huán)境文件夾,每種方法都有其適用場(chǎng)景和優(yōu)缺點(diǎn),供根據(jù)具體需求選擇使用
    2025-11-11
  • 基于Python繪制一個(gè)摸魚(yú)倒計(jì)時(shí)界面

    基于Python繪制一個(gè)摸魚(yú)倒計(jì)時(shí)界面

    前端時(shí)間推出了一個(gè)摸魚(yú)APP,這篇文章將為大家介紹基于Python繪制一個(gè)摸魚(yú)倒計(jì)時(shí)界面,文中的示例代碼講解詳細(xì),感興趣的可以學(xué)習(xí)一下
    2021-12-12
  • Python函數(shù)基本使用原理詳解

    Python函數(shù)基本使用原理詳解

    這篇文章主要介紹了Python函數(shù)基本使用原理詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • Python中canmatrix解析dbc文件應(yīng)用常見(jiàn)示例

    Python中canmatrix解析dbc文件應(yīng)用常見(jiàn)示例

    DBC是一種用于描述CAN網(wǎng)絡(luò)協(xié)議的文件格式,Python作為一種流行的編程語(yǔ)言,也提供了解析DBC文件的相關(guān)類(lèi)庫(kù),這篇文章主要給大家介紹了關(guān)于Python中canmatrix解析dbc文件的相關(guān)資料,需要的朋友可以參考下
    2024-08-08
  • Python函數(shù)中的不定長(zhǎng)參數(shù)相關(guān)知識(shí)總結(jié)

    Python函數(shù)中的不定長(zhǎng)參數(shù)相關(guān)知識(shí)總結(jié)

    今天給大家?guī)?lái)的是關(guān)于Python函數(shù)的相關(guān)知識(shí),文章圍繞著Python不定長(zhǎng)參數(shù)展開(kāi),文中有非常詳細(xì)的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • Pandas中KeyError: 'Column_Name' not in index”的報(bào)錯(cuò)分析

    Pandas中KeyError: 'Column_Name' not 

    在使用Pandas進(jìn)行數(shù)據(jù)處理時(shí),KeyError: 'Column_Name' not in index是一種常見(jiàn)的錯(cuò)誤,它通常發(fā)生在嘗試訪問(wèn)DataFrame中不存在的列名時(shí),本文將深入分析這一錯(cuò)誤的原因、提供解決辦法,需要的朋友可以參考下
    2024-07-07
  • Python使用urllib模塊對(duì)URL網(wǎng)址中的中文編碼與解碼實(shí)例詳解

    Python使用urllib模塊對(duì)URL網(wǎng)址中的中文編碼與解碼實(shí)例詳解

    這篇文章主要介紹了Python使用urllib模塊對(duì)URL網(wǎng)址中的中文編碼與解碼(Python使用urllib模塊對(duì)URL編碼與解碼)實(shí)例詳解,需要的朋友可以參考下
    2020-02-02
  • 使用Pytest.main()運(yùn)行時(shí)參數(shù)不生效問(wèn)題解決

    使用Pytest.main()運(yùn)行時(shí)參數(shù)不生效問(wèn)題解決

    本文主要介紹了使用Pytest.main()運(yùn)行時(shí)參數(shù)不生效問(wèn)題解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02

最新評(píng)論

衡东县| 六盘水市| 青田县| 郓城县| 眉山市| 红河县| 广西| 沙河市| 葫芦岛市| 永嘉县| 广宁县| 绿春县| 重庆市| 武隆县| 崇州市| 南岸区| 兰溪市| 抚顺市| 大名县| 白玉县| 蕲春县| 塔河县| 湘西| 米林县| 郓城县| 临汾市| 红河县| 嘉祥县| 沙河市| 北海市| 赤峰市| 岳阳县| 天气| 东安县| 页游| 贡觉县| 广饶县| 庄浪县| 芜湖市| 梧州市| 中宁县|