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

利用Python生成Excel炫酷圖表

 更新時(shí)間:2022年02月28日 09:34:43   作者:IT邦德  
XlsxWriter是一個(gè)用來寫Excel2007和xlsx文件格式的python模塊。它可以用來寫文本、數(shù)字、公式并支持單元格格式化、圖片、圖表、文檔配置、自動(dòng)過濾等特性。本文將用這個(gè)模塊生成酷炫的Excel圖表,需要的可以參考一下

前言

本文對(duì)Python 自動(dòng)化操作Excel并生成圖表,做了詳細(xì)的分析和說明

我們先來看一下python中能操作Excel的常用庫對(duì)比

1.xlswriter庫

XlsxWriter是一個(gè)用來寫Excel2007和xlsx文件格式的python模塊。它可以用來寫文本、數(shù)字、公式并支持單元格格式化、圖片、圖表、文檔配置、自動(dòng)過濾等特性

優(yōu)點(diǎn):功能更多、文檔高保真、擴(kuò)展格式類型、更快并可配置

缺點(diǎn):不能用來讀取和修改excel文件

官方文檔:xlsxwriter.readthedocs.io/

2.生成折線圖

# -*- coding:utf-8 -*-

import xlsxwriter

# 創(chuàng)建一個(gè)excel
workbook = xlsxwriter.Workbook("chart_line.xlsx")
# 創(chuàng)建一個(gè)sheet
worksheet = workbook.add_worksheet()
# worksheet = workbook.add_worksheet("bug_analysis")

# 自定義樣式,加粗
bold = workbook.add_format({'bold': 1})

# --------1、準(zhǔn)備數(shù)據(jù)并寫入excel---------------
# 向excel中寫入數(shù)據(jù),建立圖標(biāo)時(shí)要用到
headings = ['Number', 'testA', 'testB']
data = [
    ['2017-9-1', '2017-9-2', '2017-9-3', '2017-9-4', '2017-9-5', '2017-9-6'],
    [10, 40, 50, 20, 10, 50],
    [30, 60, 70, 50, 40, 30],
]

# 寫入表頭
worksheet.write_row('A1', headings, bold)

# 寫入數(shù)據(jù)
worksheet.write_column('A2', data[0])
worksheet.write_column('B2', data[1])
worksheet.write_column('C2', data[2])

# --------2、生成圖表并插入到excel---------------
# 創(chuàng)建一個(gè)柱狀圖(line chart)
chart_col = workbook.add_chart({'type': 'line'})

# 配置第一個(gè)系列數(shù)據(jù)
chart_col.add_series({
    # 這里的sheet1是默認(rèn)的值,因?yàn)槲覀冊(cè)谛陆╯heet時(shí)沒有指定sheet名
    # 如果我們新建sheet時(shí)設(shè)置了sheet名,這里就要設(shè)置成相應(yīng)的值
    'name': '=Sheet1!$B$1',
    'categories': '=Sheet1!$A$2:$A$7',
    'values':   '=Sheet1!$B$2:$B$7',
    'line': {'color': 'red'},
})

# 配置第二個(gè)系列數(shù)據(jù)
chart_col.add_series({
    'name': '=Sheet1!$C$1',
    'categories':  '=Sheet1!$A$2:$A$7',
    'values':   '=Sheet1!$C$2:$C$7',
    'line': {'color': 'yellow'},
})

# 配置第二個(gè)系列數(shù)據(jù)(用了另一種語法)
# chart_col.add_series({
#     'name': ['Sheet1', 0, 2],
#     'categories': ['Sheet1', 1, 0, 6, 0],
#     'values': ['Sheet1', 1, 2, 6, 2],
#     'line': {'color': 'yellow'},
# })

# 設(shè)置圖表的title 和 x,y軸信息
chart_col.set_title({'name': 'The xxx site Bug Analysis'})
chart_col.set_x_axis({'name': 'Test number'})
chart_col.set_y_axis({'name':  'Sample length (mm)'})

# 設(shè)置圖表的風(fēng)格
chart_col.set_style(1)

# 把圖表插入到worksheet并設(shè)置偏移
worksheet.insert_chart('A10', chart_col, {'x_offset': 25, 'y_offset': 10})

workbook.close()

3.生成柱狀圖

# -*- coding:utf-8 -*-

import xlsxwriter

# 創(chuàng)建一個(gè)excel
workbook = xlsxwriter.Workbook("chart_column.xlsx")
# 創(chuàng)建一個(gè)sheet
worksheet = workbook.add_worksheet()
# worksheet = workbook.add_worksheet("bug_analysis")

# 自定義樣式,加粗
bold = workbook.add_format({'bold': 1})

# --------1、準(zhǔn)備數(shù)據(jù)并寫入excel---------------
# 向excel中寫入數(shù)據(jù),建立圖標(biāo)時(shí)要用到
headings = ['Number', 'testA', 'testB']
data = [
    ['2017-9-1', '2017-9-2', '2017-9-3', '2017-9-4', '2017-9-5', '2017-9-6'],
    [10, 40, 50, 20, 10, 50],
    [30, 60, 70, 50, 40, 30],
]

# 寫入表頭
worksheet.write_row('A1', headings, bold)

# 寫入數(shù)據(jù)
worksheet.write_column('A2', data[0])
worksheet.write_column('B2', data[1])
worksheet.write_column('C2', data[2])

# --------2、生成圖表并插入到excel---------------
# 創(chuàng)建一個(gè)柱狀圖(column chart)
chart_col = workbook.add_chart({'type': 'column'})

# 配置第一個(gè)系列數(shù)據(jù)
chart_col.add_series({
    # 這里的sheet1是默認(rèn)的值,因?yàn)槲覀冊(cè)谛陆╯heet時(shí)沒有指定sheet名
    # 如果我們新建sheet時(shí)設(shè)置了sheet名,這里就要設(shè)置成相應(yīng)的值
    'name': '=Sheet1!$B$1',
    'categories': '=Sheet1!$A$2:$A$7',
    'values':   '=Sheet1!$B$2:$B$7',
    'line': {'color': 'red'},
})

# 配置第二個(gè)系列數(shù)據(jù)(用了另一種語法)
chart_col.add_series({
    'name': '=Sheet1!$C$1',
    'categories':  '=Sheet1!$A$2:$A$7',
    'values':   '=Sheet1!$C$2:$C$7',
    'line': {'color': 'yellow'},
})

# 配置第二個(gè)系列數(shù)據(jù)(用了另一種語法)
# chart_col.add_series({
#     'name': ['Sheet1', 0, 2],
#     'categories': ['Sheet1', 1, 0, 6, 0],
#     'values': ['Sheet1', 1, 2, 6, 2],
#     'line': {'color': 'yellow'},
# })

# 設(shè)置圖表的title 和 x,y軸信息
chart_col.set_title({'name': 'The xxx site Bug Analysis'})
chart_col.set_x_axis({'name': 'Test number'})
chart_col.set_y_axis({'name':  'Sample length (mm)'})

# 設(shè)置圖表的風(fēng)格
chart_col.set_style(1)

# 把圖表插入到worksheet以及偏移
worksheet.insert_chart('A10', chart_col, {'x_offset': 25, 'y_offset': 10})
workbook.close()

4.生成餅圖

# -*- coding:utf-8 -*-

import xlsxwriter

# 創(chuàng)建一個(gè)excel
workbook = xlsxwriter.Workbook("chart_pie.xlsx")
# 創(chuàng)建一個(gè)sheet
worksheet = workbook.add_worksheet()

# 自定義樣式,加粗
bold = workbook.add_format({'bold': 1})

# --------1、準(zhǔn)備數(shù)據(jù)并寫入excel---------------
# 向excel中寫入數(shù)據(jù),建立圖標(biāo)時(shí)要用到
data = [
    ['closed', 'active', 'reopen', 'NT'],
    [1012, 109, 123, 131],
]

# 寫入數(shù)據(jù)
worksheet.write_row('A1', data[0], bold)
worksheet.write_row('A2', data[1])

# --------2、生成圖表并插入到excel---------------
# 創(chuàng)建一個(gè)柱狀圖(pie chart)
chart_col = workbook.add_chart({'type': 'pie'})

# 配置第一個(gè)系列數(shù)據(jù)
chart_col.add_series({
    'name': 'Bug Analysis',
    'categories': '=Sheet1!$A$1:$D$1',
    'values': '=Sheet1!$A$2:$D$2',
    'points': [
        {'fill': {'color': '#00CD00'}},
        {'fill': {'color': 'red'}},
        {'fill': {'color': 'yellow'}},
        {'fill': {'color': 'gray'}},
    ],

})

# 設(shè)置圖表的title 和 x,y軸信息
chart_col.set_title({'name': 'Bug Analysis'})

# 設(shè)置圖表的風(fēng)格
chart_col.set_style(10)

# 把圖表插入到worksheet以及偏移
worksheet.insert_chart('B10', chart_col, {'x_offset': 25, 'y_offset': 10})
workbook.close()

5.實(shí)戰(zhàn)拓展

xlswriter新建并寫入Excel

# 3.6.2 xlswriter新建并寫入Excel
def fun3_6_2():
    # 創(chuàng)建Exce并添加sheet
    workbook = xlsxwriter.Workbook('demo.xlsx')
    worksheet = workbook.add_worksheet()

    # 設(shè)置列寬
    worksheet.set_column('A:A', 20)

    # 設(shè)置格式
    bold = workbook.add_format({'bold': True})

    # 添加文字內(nèi)容
    worksheet.write('A1', 'Hello')

    # 按格式添加內(nèi)容
    worksheet.write('A2', 'World', bold)

    # 寫一些數(shù)字
    worksheet.write(2, 0, 123)
    worksheet.write(3, 0, 123.456)

    # 添加圖片
    worksheet.insert_image('B5', 'demo.png')

    workbook.close()

以上就是利用Python生成Excel炫酷圖表的詳細(xì)內(nèi)容,更多關(guān)于Python Excel圖表的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python數(shù)據(jù)可視化之日期折線圖畫法

    python數(shù)據(jù)可視化之日期折線圖畫法

    這篇文章主要為大家詳細(xì)介紹了python數(shù)據(jù)可視化之日期折線圖畫法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • Python 獲取指定文件夾下的目錄和文件的實(shí)現(xiàn)

    Python 獲取指定文件夾下的目錄和文件的實(shí)現(xiàn)

    這篇文章主要介紹了Python 獲取指定文件夾下的目錄和文件的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • Django-Scrapy生成后端json接口的方法示例

    Django-Scrapy生成后端json接口的方法示例

    這篇文章主要介紹了Django-Scrapy生成后端json接口的方法示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • Python使用Ollama實(shí)現(xiàn)私有大模型知識(shí)庫

    Python使用Ollama實(shí)現(xiàn)私有大模型知識(shí)庫

    這篇文章主要介紹了Python使用Ollama實(shí)現(xiàn)私有大模型知識(shí)庫,在不依賴LangChain、LlamaIndex等框架的前提下,盡量減少第三方庫的使用,僅通過Ollama和NumPy兩個(gè)外部庫來實(shí)現(xiàn)RAG,需要的朋友可以參考下
    2022-01-01
  • 使用Python實(shí)現(xiàn)自動(dòng)編寫word文檔

    使用Python實(shí)現(xiàn)自動(dòng)編寫word文檔

    這篇文章主要為大家詳細(xì)介紹了如何使用Python中的python-docx實(shí)現(xiàn)自動(dòng)編寫word文檔,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以參考一下
    2024-12-12
  • 最簡單的matplotlib安裝教程(小白)

    最簡單的matplotlib安裝教程(小白)

    這篇文章主要介紹了最簡單的matplotlib安裝教程(小白),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 詳解python列表生成式和列表生成式器區(qū)別

    詳解python列表生成式和列表生成式器區(qū)別

    這篇文章主要介紹了python(列表生成式/器),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Python實(shí)現(xiàn)12306自動(dòng)搶火車票功能

    Python實(shí)現(xiàn)12306自動(dòng)搶火車票功能

    一到國慶、春節(jié)這種長假,搶火車票就非常困難?各大互聯(lián)網(wǎng)公司都推出搶票服務(wù),只要加錢給服務(wù)費(fèi)就可以增加搶到票的幾率。本文將和你一起探索搶票軟件背后的原理。
    2021-12-12
  • Python中NumPy的矩陣與通用函數(shù)

    Python中NumPy的矩陣與通用函數(shù)

    這篇文章主要介紹了Python中NumPy的矩陣與通用函數(shù),Numpy是python的一種開源的數(shù)值計(jì)算擴(kuò)展。這種工具可用來存儲(chǔ)和處理大型矩陣,比Python自身的嵌套列表結(jié)構(gòu)要高效的多支持大量的維度數(shù)組與矩陣運(yùn)算,需要的朋友可以參考下
    2023-07-07
  • Python列表(list)、字典(dict)、字符串(string)基本操作小結(jié)

    Python列表(list)、字典(dict)、字符串(string)基本操作小結(jié)

    這篇文章主要介紹了Python列表(list)、字典(dict)、字符串(string)基本操作小結(jié),本文總結(jié)了最基本最常用的一些操作,需要的朋友可以參考下
    2014-11-11

最新評(píng)論

确山县| 卓资县| 锡林郭勒盟| 嘉义县| 基隆市| 右玉县| 胶州市| 桂东县| 井冈山市| 疏勒县| 北安市| 嵩明县| 高阳县| 九龙城区| 石柱| 南陵县| 定兴县| 通江县| 永修县| 五指山市| 曲阜市| 聂拉木县| 北安市| 无锡市| 锦屏县| 时尚| 聂拉木县| 伊吾县| 海门市| 隆子县| 福鼎市| 当涂县| 高清| 漳州市| 东港市| 屯门区| 武功县| 溆浦县| 望奎县| 隆回县| 洮南市|