Python數據分析PPT報告自動化

2021-03-02 小蚊子數據分析

很多時候,我們需要做一些重複性的工作,比如說,每個月製作類似的數據分析報告,整個框架是基本固定的,此時,我們可以採用 Python 來自動生成數據分析報告,把更多的時間和精力用在分析上面,而不是調整報告的格式。

python-pptx 是一個能夠自動創建和更新 PPT 文件的 Python 庫,可以用來自動生成數據分析報告。

下面,我以自己的個人數據為例,用 python-pptx 製作一個簡略版的數據分析報告,供你參考。

下面是具體製作的步驟和方法。

首先,如果你還沒有安裝 python-pptx,那麼請在命令行輸入:

pip install python-pptx

其次,利用 matplotlib 等繪圖工具,生成數據分析報告中用到的圖表,統一保存到 pic 文件夾中。

然後,建立一個 PPT 模板文件,預先定義好母版,設置相應的布局版式等,把文件命名為「模板.pptx」。

接下來,在 Jupyter Lab 環境中運行以下代碼:

# 導入庫
from pptx import Presentation
from pptx.util import Inches, Pt
from pptx.dml.color import RGBColor

prs = Presentation('模板.pptx')

# 添加幻燈片首頁
slide_layout0 = prs.slide_layouts[0]
slide = prs.slides.add_slide(slide_layout0)

# 設置標題和副標題文本
title = slide.shapes.title
subtitle = slide.placeholders[10]
title.text = '2020年9月林驥的數據分析報告'
subtitle.text = '2020-10-08'

# 添加幻燈片,正文模塊,根據實際需求選擇布局版式

# *************1. 主要分析結論*****************
slide_layout1 = prs.slide_layouts[1]
slide1 = prs.slides.add_slide(slide_layout1)

# 添加標題
title = slide1.placeholders[10]
title.text = "1. 主要分析結論"

# 添加正文內容
content = slide1.placeholders[11]
ft = content.text_frame
ft.clear()
p = ft.paragraphs[0]
run = p.add_run()
run.text = '(1) 年初制定的運動目標是平均每天走'

# 重點強調的內容
run = p.add_run()
run.text = '10000步'
font = run.font
font.name = 'Arial'
font.size = Pt(26)
font.color.rgb = RGBColor(0, 88, 159)

# 繼續添加其他內容
run = p.add_run()
run.text = ',9月份的目標完成率為'

# 重點強調的內容
run = p.add_run()
run.text = '108.8%'
font = run.font
font.name = 'Arial'
font.size = Pt(26)
font.color.rgb = RGBColor(0, 88, 159)

# 繼續添加其他內容
run = p.add_run()
run.text = ''',超額完成任務目標;

(2) 學習的各項指標均有所提升,其中筆記方面的提升最為明顯,9月底的筆記評級變成'''

# 重點強調的內容
run = p.add_run()
run.text = 'A+'
font = run.font
font.name = 'Arial'
font.size = Pt(26)
font.color.rgb = RGBColor(0, 88, 159)

# 繼續添加其他內容
run = p.add_run()
run.text = '。'

# ***************2. 目標完成情況******************
# 添加幻燈片
slide_layout2 = prs.slide_layouts[3]
slide2 = prs.slides.add_slide(slide_layout2)
# 添加正文模塊標題
title= slide2.placeholders[10]
title.text = "2. 目標完成情況"
# 插入圖片 https://github.com/linjiwx/mp
img_path='./pic/2. 目標完成情況.jpg'
picture_placeholder = slide2.placeholders[11]
placeholder_picture = picture_placeholder.insert_picture(img_path)
# 添加描述內容
content= slide2.placeholders[12]
content.text = ' '

# ***************3. 關鍵指標變化******************
# 添加幻燈片
slide_layout3 = prs.slide_layouts[6]
slide3 = prs.slides.add_slide(slide_layout3)
# 添加正文模塊標題
title= slide3.placeholders[10]
title.text = "3. 關鍵指標變化"
# 插入圖片對象,主圖
img_path='./pic/3. 關鍵指標變化.jpg'
picture_placeholder = slide3.placeholders[11]
placeholder_picture = picture_placeholder.insert_picture(img_path)
# 添加描述內容
content= slide3.placeholders[12]
content.text = '''與年初相比,
各項指標均有所提升,
其中筆記的提升最多,
9月底的筆記評級變成A+。
'''

# ***************4. 變化原因分析******************
# 添加幻燈片
slide_layout4 = prs.slide_layouts[1]
slide4 = prs.slides.add_slide(slide_layout4)

# 添加正文模塊標題
title= slide4.placeholders[10]
title.text = "4. 變化原因分析"

# 添加描述內容
content= slide4.placeholders[11]
content.text = '''
(1) 為了錯開上班早高峰的時間,我早上通常在7點鐘之前就到了公司,增加了很多學習和寫讀書筆記的時間;

(2) 在OKR方法的指引下,我年初制定了精細閱讀26本書和原創寫作60篇文章的目標,用輸出倒逼輸入。
'''

# *************5. 建議改善措施*****************
slide_layout5 = prs.slide_layouts[1]
slide5 = prs.slides.add_slide(slide_layout5)

# 添加正文模塊標題
title= slide5.placeholders[10]
title.text = "5. 建議改善措施"

# 添加內容
content= slide5.placeholders[11]
content.text = '''
(1) 建議繼續堅持運動和學習,提升自己的健康水平和能力水平,以飽滿的狀態投入工作,不斷提高工作效率,創造出遠大於回報的價值;

(2) 建議加強知識分享,教會別人,比自己動手操作要難得多,但是,分享的過程會讓自己收穫更多,這是一件值得投入的事。
'''

prs.save('2020年9月林驥的數據分析報告.pptx')

print("報告已生成,請打開PPT文件查看。")

打開自動生成的 PPT 文件,就可以看到完整的數據分析報告結果。

長按識別下方二維碼,並關注公眾號
回復「BGZD」獲取網站連結

--還在為數據分析該如何學而煩惱的朋友,趕緊學起來,跟著數據分析入門與進階線路圖學,一步一步進階數據分析大師。

量身打造,少走彎路,6~8折限時優惠、永久有效,隨到隨學,Q群答疑

A系列是數據分析入門必學、必備課程

非編程學習路線一(SPSS方向):A+B 

非編程學習路線二(Modeler方向):A+C

編程學習路線一(Python方向):A+D

編程學習路線二(R方向):A+E

長按識別下方二維碼進入課程頁面學習,也可點文末「閱讀原文」進入。

相關焦點

  • 從PPT到Word,用Python輕鬆實現辦公自動化
    來源  | 早起Python(ID:zaoqi-python)在之前的自動化系列文章中,我們分別講過如何使用 Python 將 Word 中表格信息批量提取至
  • Python自動化用這些知識點就夠了!
    自動化辦公無非是excel、ppt、word、郵件、文件處理、數據分析處理、爬蟲這些,這次就來理一理python自動化辦公的那些知識點。下面一一詳解。如果你對python自動化處理excel很有興趣,也可以買一本專門的教材來看。ppt自動化python當然是支持ppt的自動化處理,主要的庫有pywin32com、pptx,可以創建、修改ppt文件。
  • 講一講我是如何通過Python實現辦公自動化的
    自動化辦公無非是excel、ppt、word、郵件、文件處理、數據分析處理、爬蟲這些,今天我們主要來講講excel、ppt、word自動化的操作技巧。我們需要學習的主要內容有:python基礎;excel自動化;ppt自動化;word自動化。
  • python自動化辦公手冊之python操作PPT
    前言1)python自動化文檔手冊python自動化文章一直深受廣大python愛好者的青睞。基於此,我花了整整一周時間真理出來的python自動化文檔手冊,涉及到五個章節(如下圖所示),① python使用openpyxl操作excel;② python使用PyPDF2和pdfplumber操作pdf;③ python使用python-docx操作word;④ python使用python-pptx操作PPT;⑤ python如何自動收發郵件;⑥ python製作電話號碼歸屬地查詢工具。
  • Python視頻教程網課編程零基礎入門數據分析網絡爬蟲全套Python...
    ,然後再根據自 己的需求和規劃選擇學習其他方向課程,學完後一定要多實踐 總目錄 零基礎全能篇(4套課程) 實用編程技巧進價(1套課程) 數據分析與挖掘(8套課程) 辦公自動化(3套課程) 機器學習與人工智慧(7套課程) 開發實戰篇(4套課程) 量化投資(2套課程) 網絡爬蟲(
  • 用於全棧自動化測試的最佳Python工具!
    這個庫是我認為下載次數最多的python庫之一。這對您的自動化工作是必不可少的。  說到測試Andrew Knight推薦給我的另一個庫的API,自動化熊貓是Tavern。Automagica的最酷之處在於,你可以快速自動化一系列不同的跨平臺流程,比如:  當我說「自動化」時,我指的不僅僅是功能測試自動化,而是任何能夠幫助您加速軟體開發過程的活動。  我用來從HTML和XML文件中提取數據的Python庫之一是Beautiful Soup。
  • python自動化辦公速學,學會這騷姿勢,加班?不存在的!
    日常工作中最痛苦的就莫過於,明明知道是重複的工作,卻不得不,重複的做,既煩躁又低效率,用python來解放雙手把,小編帶你利用python-pptx (0.6.7)自動生成250張PPT, 希望通過實例, 給常年整理PPT報表的上班族, 一個解放生產力的新思路。
  • 基於python的大數據分析-pandas數據讀取(代碼實戰)
    書籍推薦《大話軟體測試》出版啦,內容包括但不限於性能、自動化、接口、安全、移動APP非功能測試、抓包、loadrunner、jmeter
  • 用Python玩轉PPT
    安裝pptx是一個非標準庫,需要在命令行中安裝pip install python-pptx要注意,安裝的時候是python-pptx,而實際調用時均為pptx。這裡和docx模塊相同。基本結構再看一下ppt結構組成,會較word複雜許多。當然這也跟ppt的高度自定義拓展性有關簡單來說,一個PPT文件為presentation,基本的結構為展示文件presentation-幻燈片頁slide-形狀shape組成,形狀就需要區分開,是包含文本的形狀還是不包含文本的形狀(純圖片等)。
  • python數據分析專題 (7):python數據分析模塊
    python是一門優秀的程式語言,而是python成為數據分析軟體的是因為python強大的擴展模塊。
  • 學會Python+Selenium,分分鐘搭建Web自動化框架!
    用python+selenium實現UI自動化測試,要有一些HTML和xpth的基礎,當然python基礎一定是必須要會的。筆者建議花點時間了解下相關基礎知識,不至於後面發懵。一、什麼是selenium?selenium是個強大的工具集。
  • python金融風控評分卡模型和數據分析
    (原創課程,版權所有,項目合作QQ:231469242,微信公眾號:pythonEducation) 課程介紹python金融風控評分卡模型和數據分析微專業課包含《python信用評分卡建模(附代碼)》,《python風控建模實戰lendingClub》,《金融現金貸用戶數據分析和畫像》三套課程系列
  • 通過python-pptx模塊操作ppt文件
    ppt通過其精美的可視化技巧以及良好的演示效果,成為了職場人士的必備技能。ppt的設計是一門大學問,無論是設計技巧,還是操作方法,都衍生出了專門的課程。 本文主要介紹python操作ppt的技巧,編程的優勢在於處理速度,對於高大上的ppt設計,還是需要"以人為本", 所以該模塊的使用場景主要是ppt基本元素的提取和添加,適合大量內容的轉化,比如word轉ppt, 減少大量繁瑣的人工操作,儘管提供了一些基本的樣式設計,但是並不能滿足日常辦公對ppt美觀性的要求。
  • 大數據分析四大分析要素
    至於電腦作業系統是選擇os,還是ws,建議選擇後者,從電腦普及率來看是ws更高,ws分析工具更全,功能更強大;   2;基礎分析和展示工具:數據分析中最常用的數據匯總和展示工具是excel和ppt,excel是最常用的數據分析工具,哪怕是在大的數據公司,比如阿里巴巴、美團、騰訊、百度,通常會先在雲上把需要的指標進行初步匯總
  • 數據分析從業者必看,10 個加速 python 數據分析的簡單的小技巧
    其中,有些可能是相當有名的,有些可能是新的,但我相信下次您從事數據分析項目時,它們會非常有用。1.Profiling the pandas dataframeProfiling 是一個幫助我們理解數據的程序,而 Pandas Profiling 正是實現這一點的一個 python 包。
  • 小白數據分析——Python職位數據分析全鏈路
    數據採集巧婦難為無米之炊,我們做數據分析大部分情況是用公司的業務數據,因此就不需要關心數據採集的問題。然而我們自己業餘時間做的一些數據探索更多的需要自己採集數據,常用的數據採集技術就是爬蟲。數據清洗有了數據後,先不要著急分析。我們需要對數據先有個大概的了解,並在這個過程中剔除一些異常的記錄,防止它們影響後續的統計結果。
  • Python辦公自動化 | 批量word報告生成工具
    有時候我們需要按照某種規則生成一種固定模板的word報告,python能夠很好的完成這項工作。
  • 為什麼數據分析要學習Python?
    混跡網際網路的同學們,或多或少都對「數據分析師」這一職業有所耳聞。即使你不認識任何數據分析師,也一定看到過這類研究報告或者文章:Smart is the new sexy.酷炫的圖表,理性的分析闡述,出其不意又在情理之中的思考角度,總讓人對這群「用數據講故事的人」充滿了嚮往。
  • 大數據時代,如何培養數據分析思維?|建模|excel|數據分析|python|...
    大數據時代來臨,「數據」熱度飆升,衍生出的行業也受到追捧。據悉,中國大數據行業人才需求2020年將達210萬,未來5年需求量在2000萬人左右。可見,國內數據分析崗錢途與前景並存,想入門該朝陽產業,需要先明白數據分析究竟是什麼?
  • Python 題庫自動化面試題
    單例設計模式工廠模式PO設計模式數據驅動模式面向接口編程設計模式 2、什麼是斷言( Assert) ? 3、什麼是web自動化測試 4、什麼是Selenium?")f("python", l, d)f("python", *t)f("python", *l, **d)f("python", q="winning", **d)執行結果:1 (2,) {}1 (2, 3, 'python') {}python ([1, 2, 3], {'a': 7, 'b': 8