【Python算法與程序設(shè)計課程論文4000字】_第1頁
【Python算法與程序設(shè)計課程論文4000字】_第2頁
【Python算法與程序設(shè)計課程論文4000字】_第3頁
【Python算法與程序設(shè)計課程論文4000字】_第4頁
【Python算法與程序設(shè)計課程論文4000字】_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

VI- 《Python算法與程序設(shè)計》課程論文:基于Python的數(shù)據(jù)可視化應(yīng)用研究目錄TOC\o"1-2"\h\u10491引言 1108552需求分析與系統(tǒng)設(shè)計 285702.1需求分析 2208632.2系統(tǒng)設(shè)計 2184673系統(tǒng)實現(xiàn) 4155663.1數(shù)據(jù)導(dǎo)入整理 4202183.2數(shù)據(jù)分析及可視化 666833.3用戶交互界面實現(xiàn) 8320614.結(jié)論 10摘要:近些年來,隨著經(jīng)濟全球化,數(shù)據(jù)信息呈現(xiàn)爆炸式增長,大數(shù)據(jù)時代已經(jīng)到來。同時,財務(wù)數(shù)據(jù)作為每家公司中非常重要的一部分,明確的財務(wù)數(shù)據(jù)可以充分為公司的發(fā)展服務(wù)。這時,把數(shù)據(jù)整理為更加直觀、有效的數(shù)據(jù)就十分的重要,這是,數(shù)據(jù)可視化提供了一種可能。采用了基于Python的數(shù)據(jù)可視化應(yīng)用實現(xiàn),結(jié)合壹零壹公司的財務(wù)情況,進行可視化,可以將財務(wù)人員從一堆數(shù)據(jù)中解放出來,大大簡化了人工處理數(shù)據(jù)的難度和失誤率。通過該程序可以將數(shù)據(jù)進行可視化,將豐富的數(shù)據(jù)信息轉(zhuǎn)化成了一張簡單、直觀的圖來表示出來,使得財務(wù)數(shù)據(jù)在傳遞過程中可以更加的明確、有效,有利于公司的利潤、支出等財務(wù)信息的分析,公司未來發(fā)展的規(guī)劃。關(guān)鍵詞:可視化財務(wù)數(shù)據(jù)Python1引言互聯(lián)網(wǎng)的發(fā)展日新月異,快速進步,使得數(shù)據(jù)快速增長,如此大量的數(shù)據(jù)的產(chǎn)生使人們不得不脫離傳統(tǒng)的紙和筆去計算、記錄數(shù)據(jù),需要一種更加便捷的方法來整理數(shù)據(jù)。這時候,現(xiàn)代計算機技術(shù)給出了一條便捷的路徑,數(shù)據(jù)可視化為這一問題提供了解決辦法??梢暬瘜τ诤A康臄?shù)據(jù)最重要的就是將他們快速整理成為能被人們所直接看到的“數(shù)據(jù)”,也就是條形圖等圖表,這樣不僅可以把眾多雜亂無序的數(shù)據(jù)整理成為直觀有序的圖表,而且更加清晰地幫助人們獲取隱藏在數(shù)據(jù)背后的信息。壹零壹財務(wù)數(shù)據(jù)可視化程序就是把壹零壹公司的繁多的財務(wù)數(shù)據(jù)通過運用Python語言提取出來有價值的數(shù)據(jù)。本畢業(yè)設(shè)計是研究基于Python對壹零壹公司的財務(wù)數(shù)據(jù)進行分析和處理,研究通過利用Python語言來進行數(shù)據(jù)處理和數(shù)據(jù)可視化,實現(xiàn)對壹零壹公司財務(wù)數(shù)據(jù)的檢查、修正和可視化分析。本次研究成果可以應(yīng)用于壹零壹公司財務(wù)部門的日常財務(wù)工作中,幫助壹零壹公司的財務(wù)部門更方便、靈活的處理數(shù)據(jù),幫助壹零壹公司的領(lǐng)導(dǎo)更直觀地了解公司的財務(wù)狀況。2需求分析與系統(tǒng)設(shè)計2.1需求分析根據(jù)與壹零壹人員的溝通,深入交流,理解了壹零壹財務(wù)人員的實際需要,確定系統(tǒng)的功能等具體要求,本文就是在經(jīng)過分析和調(diào)研的基礎(chǔ)上,結(jié)合了公司的實際需要,確定系統(tǒng)的功能性需求主要包括數(shù)據(jù)處理、數(shù)據(jù)分析、數(shù)據(jù)可視化三個部分。數(shù)據(jù)處理部分,分為數(shù)據(jù)導(dǎo)入、數(shù)據(jù)整理和數(shù)據(jù)檢查,為了方便財務(wù)人員使用軟件,數(shù)據(jù)導(dǎo)入部分要使用簡單的導(dǎo)入方式,數(shù)據(jù)整理要符合公司實際運營情況,在數(shù)據(jù)去重去空的時候盡可能避免很大的誤差出現(xiàn),數(shù)據(jù)檢查要能檢查出計算錯誤,然后經(jīng)過郵件告知相應(yīng)的部門。數(shù)據(jù)分析功能是壹零壹公司財務(wù)數(shù)據(jù)可視化的重要功能,是對壹零壹公司的財務(wù)數(shù)據(jù)進行整合和分析,在分析過程中要提取出重要的數(shù)據(jù),進行相應(yīng)的排列,最后呈現(xiàn)出來。數(shù)據(jù)可視化功能是將數(shù)據(jù)分析后得到的分析結(jié)果以圖表的形式直觀地展示出來,分為各部門數(shù)據(jù)可視化和公司整體的數(shù)據(jù)可視化,壹零壹公司的部門比較多,如果使用條形圖或者餅狀圖來展示數(shù)據(jù)就會顯得比較雜亂,這時候就是需要采用讓用戶更加容易理解的圖來展示數(shù)據(jù)。而公司的整日可視化就要體現(xiàn)出公司整體的經(jīng)營情況,各項數(shù)據(jù)的變化趨勢。2.2系統(tǒng)設(shè)計在確定完需求之后,就可以開始系統(tǒng)的架構(gòu)設(shè)計了。分層是系統(tǒng)中最常見的一種系統(tǒng)架構(gòu)設(shè)計模式,將整個系統(tǒng)進行切分,本系統(tǒng)采用雙層架構(gòu)設(shè)計,將系統(tǒng)分為了表示層和業(yè)務(wù)邏輯層。表示層是用戶交互操作界面,表示層主要是將處理好的財務(wù)數(shù)據(jù)進行可視化展示,業(yè)務(wù)邏輯層主要是將已經(jīng)導(dǎo)入進系統(tǒng)的數(shù)據(jù)進行相關(guān)的處理,系統(tǒng)架構(gòu)設(shè)計如圖2-1所示。圖2-1系統(tǒng)架構(gòu)設(shè)計圖根據(jù)功能的需求分析和系統(tǒng)的架構(gòu)設(shè)計,可以將壹零壹公司財務(wù)數(shù)據(jù)可視化系統(tǒng)分為數(shù)據(jù)處理模塊、數(shù)據(jù)分析模塊和可視化展示模塊。數(shù)據(jù)處理模塊進行數(shù)據(jù)導(dǎo)入、數(shù)據(jù)整理和數(shù)據(jù)檢查,數(shù)據(jù)可視化模塊是根據(jù)數(shù)據(jù)分析模塊的分析結(jié)果進行數(shù)據(jù)可視化展示。(1)數(shù)據(jù)處理模塊是系統(tǒng)功能的基礎(chǔ),數(shù)據(jù)導(dǎo)入就是把壹零壹公司的財務(wù)報表導(dǎo)入進系統(tǒng)中。數(shù)據(jù)整理,由于壹零壹的財務(wù)報表主要為Excel格式,為了方便計算機更好地計算,為后面的編程提供便利,需要對數(shù)據(jù)進行整理,主要是去空,把數(shù)據(jù)轉(zhuǎn)換成為方便計算、編程的格式。數(shù)據(jù)檢查是采用了用本期實際減去本期預(yù)算得出的本期同預(yù)算差異和表中的數(shù)據(jù)進行比對,即使發(fā)現(xiàn)問題,如果出現(xiàn)了數(shù)據(jù)不一樣的問題,財務(wù)人員可以選擇輸入郵箱和郵箱授權(quán)碼發(fā)送郵件的方式,通知相關(guān)人員檢查數(shù)據(jù)。(2)數(shù)據(jù)可視化模塊是本畢設(shè)最重要的模塊,是財務(wù)數(shù)據(jù)的具體體現(xiàn),以數(shù)據(jù)分析模塊的分析結(jié)果為基礎(chǔ),為了方便壹零壹公司理解財務(wù)數(shù)據(jù),直觀地體現(xiàn)出十多個部門在12個月中的財務(wù)數(shù)據(jù)情況,對費可視化展示形式,熱力圖既可以以特殊高亮的形式展示出費用、利潤和預(yù)算差異比較高的部門,也可以用漸變、淺色的形式展示出其他部門的情況,更方便在工作總結(jié)會議上為公司高管們呈現(xiàn)出直觀的數(shù)據(jù)。同時也會將費用和收入表格呈現(xiàn)出來,方便高管查看具體數(shù)據(jù)。壹零壹公司的總體收支,使用折線圖可以更好地體現(xiàn)出數(shù)據(jù)的變化趨勢,便于分析情況和風(fēng)險的分析,為下一步發(fā)展做出規(guī)劃和準備。壹零壹公司各部門費用累計圖采用的是條形圖的形式,每個部門使用一種顏色,將它們疊起來進行展示,這樣可以看到每個月的各部門的費用占比情況,方便領(lǐng)導(dǎo)層討論撥款等情況。以上就是各個模塊的大體設(shè)計,整個系統(tǒng)的流程圖如下圖2-2所示。圖2-2系統(tǒng)流程圖軟甲打開后,首先進行數(shù)據(jù)的導(dǎo)入,之后進行數(shù)據(jù)整理和檢查,數(shù)據(jù)檢查會列出有錯誤的數(shù)據(jù),壹零壹公司的財務(wù)人員可以選擇是否發(fā)郵件去提醒相關(guān)人員更改數(shù)據(jù),之后進行數(shù)據(jù)分析,根據(jù)數(shù)據(jù)分析的結(jié)果進行數(shù)據(jù)可視化。3系統(tǒng)實現(xiàn)3.1數(shù)據(jù)導(dǎo)入整理在數(shù)據(jù)導(dǎo)入為了方便財務(wù)人員進行導(dǎo)入,所以采用了tkinter中的filedialog方法可以進行路徑的選擇,選擇界面如圖3-1所示。之后使用pd.read_excel方法獲取壹零壹公司在2020年11月的財務(wù)數(shù)據(jù),因為各個部門的數(shù)據(jù)排列都一樣,所以只需查看一個表的數(shù)據(jù)表格格式就可以知道全部表的數(shù)據(jù)格式,方便后面調(diào)整,如圖3-2所示。圖3-1路徑選擇圖3-2月收支表整理主要使用的是pandas庫,它可以勝任數(shù)據(jù)的清晰和編輯工作,能夠處理電子表格的數(shù)據(jù),從這張圖中可以發(fā)現(xiàn)數(shù)據(jù)前兩行出現(xiàn)大量的空值,而且列索引不明確,需要進行數(shù)據(jù)的整理,使這些數(shù)據(jù)更加的清晰,也方便后續(xù)的計算和為數(shù)據(jù)的提取、可視化提供基礎(chǔ)。整理代碼如下:defget_data(department):df=df_all[department]df=df.drop(index=0)df.columns=df.loc[2,:]df=df.drop(index=2)df_c=df.columns.to_list()df_c[0]='index'df.columns=df_cc=[]month_list_col=df.loc[1,:].valuesforiinrange(len(month_list_col)):ifmonth_list_col[i]isnotnp.nan:c.append(month_list_col[i])else:c.append(c[-1])df=df.drop(index=1)df=pd.DataFrame(df.values,columns=[c,df.columns.to_list()])returndfget_data函數(shù)的作用就是進行數(shù)據(jù)的整理,傳入的參數(shù)是部門數(shù)據(jù),進行清洗列名稱,刪除無關(guān)的行,對表格的列索引進行重新劃分生成最終表DataFrame。然后只需要將部門傳入即可完成所有表格的修改,修改后的表如圖3-3所示,經(jīng)過修改后,數(shù)據(jù)的列索引更加清晰直觀,方便計算機計算和之后的編程。3-3修改后的101分月收支數(shù)據(jù)3.2數(shù)據(jù)分析及可視化總體收支采用折線圖,目的是反應(yīng)壹零壹公司的總收入、費用、利潤和稅后利潤的總體變化趨勢,有助于壹零壹公司分析上升趨勢和下降趨勢的原因,可以有效做好整體規(guī)劃,關(guān)鍵代碼如下圖所示。data_plot=depart_all.iloc[[0],list(range(2,66,5))]x=[afora,bindata_plot.columns][:-1]y0=depart_all.iloc[[0],list(range(2,66,5))].values[0][:-1]y4=depart_all.iloc[[4],list(range(2,66,5))].values[0][:-1]y61=depart_all.iloc[[61],list(range(2,66,5))].values[0][:-1]y66=depart_all.iloc[[66],list(range(2,66,5))].values[0][:-1]l1,=plt.plot(x,y0)l2,=plt.plot(x,y4)l61,=plt.plot(x,y61)l66,=plt.plot(x,y66)plt.legend(handles=[l1,l2,l61,l66],labels=['收入','費用','利潤','稅后利潤'],loc='best')plt.title('各部門總收入、費用、利潤、稅后利潤')plt.xlabel('月份')plt.ylabel('金額')首先設(shè)定x軸數(shù)據(jù)和y軸數(shù)據(jù),其中y軸數(shù)據(jù)取第2列到第66列的數(shù)據(jù),每5列取一個數(shù)據(jù),之后設(shè)定四條折線,對x軸和y軸進行命名,條形統(tǒng)計圖如圖3-4所示。圖3-4各部門總收入、費用、利潤、稅后利潤折線圖根據(jù)條形統(tǒng)計圖可以得知,壹零壹公司在2020年整體盈利,其中六月之前,因為新冠疫情的影響出現(xiàn)了費用高于收入的情況,但因為國家免稅政策,六月之前基本沒有交稅。在六月之后,因為中小學(xué)開學(xué)、疫情常態(tài)化防控和網(wǎng)課盛行,壹零壹公司財務(wù)出現(xiàn)大幅增長,但又在八月之后出現(xiàn)下降,十月份之后小幅回升。而費用因為九月中小學(xué)開學(xué)所造成的營銷成本增大,又出現(xiàn)了費用高于收入的情況。3.3用戶交互界面實現(xiàn)用戶交互界面是決定用戶使用體驗的界面,界面的簡介、直觀可以促使財務(wù)人員更加有效率地工作,用戶界面主要使用了Tkinter庫,它的特點是簡單而且是Python的自帶庫,可隨時使用,有很高的兼容性。它的使用方法為先進行實例化,調(diào)用title()方法命名標(biāo)題,用geometry()方法調(diào)整窗口大小,之后用button方法創(chuàng)建按鈕,place()進行布局,具體代碼如下:draw_root=Tk()draw_root.geometry('400x300+10+10')draw_root.title("數(shù)據(jù)可視化")btn1=Button(draw_root,text='各部門預(yù)算熱力圖',command=draw_1)btn1.place(relx=0.1,rely=0.1,relwidth=0.3,relheight=0.1)以此代碼為例,可以制作出簡單的用戶圖形界面,如圖3-5所示。3-5首頁首頁設(shè)計了三個按鈕和一個標(biāo)題,按鈕分別為數(shù)據(jù)導(dǎo)入、數(shù)據(jù)處理和數(shù)據(jù)可視化,點擊數(shù)據(jù)導(dǎo)入之后財務(wù)人員可以選擇要要導(dǎo)入的文件,之后提示導(dǎo)入成功,如圖3-6所示。3-6導(dǎo)入成功當(dāng)財務(wù)人員點擊數(shù)據(jù)處理時,后臺進行數(shù)據(jù)處理,并打印有出入的數(shù)據(jù),財務(wù)人員可以選擇是否發(fā)送郵件,之后提示數(shù)據(jù)處理成功,如圖3-7所示。圖3-7數(shù)據(jù)處理當(dāng)財務(wù)人員點擊數(shù)據(jù)可視化的時候,出現(xiàn)數(shù)據(jù)可視化菜單,財務(wù)人員可以根據(jù)公司的情況選擇想要的可視化圖形,如圖3-8所示。3-8數(shù)據(jù)可視化菜單4.結(jié)論壹零壹公司財務(wù)數(shù)據(jù)可視化系統(tǒng)設(shè)計的實踐過程,幾乎包含了壹零壹公司全部的財務(wù)數(shù)據(jù),可視化內(nèi)容全面,可以有效幫助領(lǐng)導(dǎo)層的決策。直觀、簡單的界面,使壹零壹公司財務(wù)人員可是熟練使用。切實貼切壹零壹公司的財務(wù)數(shù)據(jù)的特點,實現(xiàn)了自動化辦公。本問仍然有很大的改善空間,還存在一些不足,故在后續(xù)的工作中需要提高的是:軟件的界面和可視化圖應(yīng)該更加的精致美觀,方便公司對于數(shù)據(jù)更好的把控。系統(tǒng)設(shè)計的嚴謹性,在以后的使用過程中也要注意維護。參考文獻[1]姜趙,謝曉偉.基于Python的數(shù)據(jù)可視化應(yīng)用與研究[J].科學(xué)技術(shù)創(chuàng)新,2020(30):2.[2]陳嘉發(fā).Python數(shù)據(jù)可視化的應(yīng)用研究[J].福建電腦,2019,35(5):3.[3]何佳,惠建忠,王曙東,等.Python在CINRAD

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論