超炫酷動態(tài)排序圖、視頻,我都幫你用Python實現(xiàn)了
↑↑↑點擊上方藍字,回復資料,10個G的驚喜
先看一下最終效果,這是一張Python生成的GIF,還可以輸出MP4格式的視頻,到底怎么做的?且聽我娓娓道來——數(shù)據(jù)集、代碼、詳細做法全部講清楚。

數(shù)據(jù)集獲取方式
大家可以去國家統(tǒng)計局的網(wǎng)站,搜索想要的數(shù)據(jù),比如本例中我們需要的是人口數(shù)據(jù),如下圖所示,下載數(shù)據(jù)即可,我比較喜歡csv格式。
把數(shù)據(jù)整理一下,如下圖的格式:
核心函數(shù)
代碼部分大家請看下面的的截圖,這里我們只看一下核心函數(shù)的主要參數(shù),非常重要?。?!
函數(shù)FuncAnimation(fig,func,frames,init_func,interval,blit)是繪制動圖的主要函數(shù),其參數(shù)如下:
fig 繪制動圖的畫布名稱 func自定義動畫函數(shù),即下邊程序定義的函數(shù)update frames動畫長度,一次循環(huán)包含的幀數(shù),在函數(shù)運行時,其值會傳遞給函數(shù)update(n)的形參“n” init_func自定義開始幀,即傳入剛定義的函數(shù)init,初始化函數(shù) interval更新頻率,以ms計 blit選擇更新所有點,還是僅更新產(chǎn)生變化的點。應選擇True,但mac用戶請選擇False,否則無法顯示

其實原理就是生成每個年份的柱狀圖,然后用FuncAnimation繪制GIF

配置視頻
大家運行上面代碼的時候還是會出錯的,報錯信息:RuntimeError: Requested MovieWriter (ffmpeg) not available
因為我們還需要安裝FFmpeg,它一套可以用來記錄、轉(zhuǎn)換數(shù)字音頻、視頻,并能將其轉(zhuǎn)化為流的開源計算機程序。采用LGPL或GPL許可證。它提供了錄制、轉(zhuǎn)換以及流化音視頻的完整解決方案。
這里只講一下ffmpeg的安裝步驟:
登錄官網(wǎng)
下載安裝包,解壓到某個文件夾下,復制解壓縮后的bin目錄下ffmpeg.exe的路徑,沾到上面代碼ffmpegpath = os.path.abspath()中即可。
后續(xù)
動態(tài)排名圖可以輸出為視頻文件,會視頻剪輯的還可以加上自己喜歡的bgm,讓整個效果更加爆燃。
—END— 歡迎添加我的微信,更多精彩,盡在我的朋友圈。 ↓掃描二維碼添加好友↓ 推薦閱讀
(點擊標題可跳轉(zhuǎn)閱讀)
評論
圖片
表情

