美國失業人數突破2200萬!用Python畫出動態圖後,我眼睛亮了

2020-12-22 CDA數據分析師

CDA數據分析師 出品

目前,我國新冠疫情已經大幅度好轉,各大省市在3、4月份都已經開始復產復工,中小學生開課回校的地區也不斷增加,連受災最嚴重的武漢也解封了,全國的經濟社會運作逐漸步入正軌。

但此起彼伏,全球疫情此時仍處於非常嚴峻的當下, 根據美國約翰斯.霍普金斯大學統計的數據顯示,截至北京時間19日晚6時38分,全球新冠死亡病例超過16萬例,達到161,324例,全球確診病例突破230萬,達2,343,293例。

根據數據,目前死亡病例最多的國家是美國,為33,903例。美國同時還是全球確診病例最多的國家,累計確診病例突破70萬,達到722,761例。

疫情給全球人民帶來的不僅僅是生命的威脅,同樣還有經濟上的困境以及失業危機。因為疫情的影響,美國陷入了「裁員潮」,很多美國人不得不因為這次疫情被辭退,從而申請失業救濟金。

01

美國失業人數超2200萬

抹去11年來所有新增就業

美國勞工部16日公布的數據顯示,受新冠疫情在美國蔓延影響,上周美國首次申請失業救濟人數達到524.5萬,這意味著過去四周美國首次申請失業救濟人數已累計達到約2200萬,這約佔美國勞動力總數的八分之一,基本抹去了08年金融危機以來過去11年所有的新增就業。

特別是這個由美國勞工部統計的失業救濟人數動態圖,也是引爆全網,從中可以看到自六十年代來,美國的失業救濟人數一直是上下波動。而受這次疫情影響,美國失業救濟人數像坐了火箭一般,一路飆升。

(結尾動態圖高能,一定要看到最後!)

美國每周首次申請失業救濟人數

來源:美國勞工部 United States Department of Labor

那麼這讓人眼前一亮的動態圖,究竟是如何實現的呢?,今天我們就來教你用Python輕鬆實現!

02

教你用Python繪製

美國申請失業險人數動態圖

我們使用pyecharts包進行美國申請失業保險人數的動態趨勢圖的繪製,如果你沒有安裝pyecharts,可以使用以下代碼進行pip安裝。

pip install pyecharts

製作這樣的一個動態圖使用的是Pyecharts中的的TimeLine(時間線輪播圖)的類。使用TimeLine的方法,你可以輕鬆地將繪製帶有時間序列的動態圖形,比如動態條形圖、動態餅圖、動態桑基圖、動態地圖等等。

首先需要導入我們需要使用的包,其中pandas用於數據整理,pyecharts用於繪圖。

# 導入包import pandas as pdfrom pyecharts import options as optsfrom pyecharts.charts import Timeline, Line

首先使用pandas讀入數據,我們選取的數據來自於美國勞工部官方網站,數據包含了從1967年07月01日~2020年04月04日的申請失業保險人數,這是一份帶有時間序列的面板數據,適合進行動態可視化繪圖使用。

# 讀入數據df = pd.read_excel('USA_UI_1967_2020.xlsx')df.head()

在繪圖之前,首先我們需要梳理一下生成動圖的邏輯和思路。

我們將繪圖數據分為維度和度量來思考,在這個條形圖的繪製中,時間就是維度,S.A.(申請失業保險人數)就是度量值,繪製動態折線圖就是把每天的數據製作成一張截止到當天的折線圖然後輪動,下面使用Pandas對時間數據進行簡單的處理,並選取2000年以後的數據進行圖形的繪製,處理後的數據如下所示:

# 時間處理df['time_index'] = pd.to_datetime(df['time_index'])df['time_index'] = df['time_index'].dt.date.astype('str')# 選取子集df_sel = df.loc[:, ['time_index', 'S.A.']]df_sel['time_2'] = df_sel['time_index'].copy()df_sel = df_sel.set_index('time_index') df_sel = df_sel.loc[(df_sel.index>='2000-01-01')] df_sel.head()

接下來使用Pyecharts庫中的TimeLine和Line類進行圖形的繪製,代碼說明如下,其中的配置項可以看到pyecharts官網 ht tps://pyec harts.org 進行查看。

圖形生成在本地的html網頁中。

代碼實現:

# 實例化一個timelinet1 = Timeline(init_opts=opts.InitOpts(width='1350px', height='750px'))# 添加配置項t1.add_schema(play_interval=1, # 播放的速度is_loop_play=False, # 是否循環播放 linestyle_opts=opts.LineStyleOpts(width=0.5), )# 時間數據time_date = df_sel.index.values.tolist()for i in time_date: # 繪製線形圖 line = Line() line.add_xaxis(df_sel.loc[:i, 'time_2'].values.tolist()) line.add_yaxis('', df_sel.loc[:i, 'S.A.'].values.tolist()) line.set_global_opts(title_opts=opts.TitleOpts('美國申請失業保險{}日人數'.format(i)) ) line.set_series_opts(label_opts=opts.LabelOpts(is_show=False), linestyle_opts=opts.LineStyleOpts(width=2) ) # 添加到t1中 t1.add(line, '{}'.format(i))# 生成HTML文檔t1.render('美國申請失業保險動態折線圖.html')

這裡我們選至2000年後的數據進行繪製,讓我們看看這成品,最後幾秒你一定驚嘆:

相關焦點

  • 美國上周新增失業人數超520萬 失業總人數達2200萬
    美國上周新增失業人數超520萬 失業總人數達2200萬原標題:美國上周新增失業人數超過520萬據央視新聞客戶端消息,美國勞工部數據顯示,上周美國新增失業人數超過520萬,略高於此前新增500萬的預期。這使得近期失業總人數達到約2200萬。
  • python使用matplotlib畫動態圖
    matplotlib是python的核心繪圖庫,是python的一個開源項目,旨在為python提供一個繪圖庫。matplotlib與numpy組合是一種可行的matlab替代方案。下面我們就來聊一聊如何使用matplotlib繪製一個二維動態圖。
  • 【美國最新疫情動態:美國累計確診病例突破1847萬例、死亡人數超32...
    2020-12-22 10:33:54來源:FX168 【美國最新疫情動態:美國累計確診病例突破1847萬例、死亡人數超32.6萬】Worldometers世界實時統計數據顯示,截至香港時間12月22日10時04分,美國新冠肺炎累計確診病例突破1847萬例,達到18,473,716例;累計死亡病例超過32.6萬例,達326,772例。
  • 川普喊出減產「1000萬桶」的背後:石油巨頭破產,失業人數暴增
    但是,美國先後與沙特和俄羅斯溝通,希望減產以穩定油市。在川普的努力下,原油價格確實出現了大幅上漲。卓創資訊分析師朱光明接受《國際金融部》記者採訪時直言,減產1000萬桶/日是天方夜譚。據悉,2019年減產協議是120萬桶/日,年底減產增至170萬桶/日,上個月深化減產150萬桶/日沒有通過。如果當時通過的話,傳統OPEC+將會減產320萬桶/日。
  • 新一線城市競爭力盤點,用Python繪製動態圖帶你看懂!
    (來自21世紀報導)其中在人口增量方面:西安由於大幅降低落戶門檻,且將西鹹新區人口納入人口總數後,在近3年以新增128.87萬常住人口,排名15個新一線城市常住人口增量第一位。常住人口增量連年提升的杭州,則以近3年117.2萬的增量,排名新一線城市第二位。
  • 非農就業崗位料下降2200萬 失業率將提高至大蕭條時期
    來源:匯通網匯通網訊——北京時間5月8日20:30,美國勞工部將公布4月非農就業報告。分析人士預計,4月非農就業崗位料減少2200萬個,為歷史最大降幅,將打破2007-2009年經濟衰退期間創下的80萬的紀錄;預計4月份失業率將躍升至16%,打破1982年11月創下的10.8%的二戰後紀錄。
  • 蔡英文臺南輔選現場人數突破15萬?一張圖曝光真相!
    蔡英文臺南輔選現場人數突破15萬?一張圖曝光真相!(圖片來源:臺灣「中時電子報」)  中國臺灣網1月6日訊 據臺灣「中時電子報」報導,民進黨籍臺灣地區領導人候選人蔡英文、副領導人候選人賴清德昨(5日)傍晚,在臺南舉辦造勢大會,主辦單位估計現場人數突破15萬人。但令人好奇的是,蔡、賴還在臺上闡述理念時,臺下前方靠近舞臺處卻都沒坐滿,顯然與主辦宣稱的人數有極大落差。
  • 5月非農好於預期又如何 美國初請失業人數恐仍高企
    來源:匯通網原標題:5月非農好於預期又如何,美國初請失業人數恐仍高企!經濟陣痛仍未遠去,黃金有望延續漲勢6月10日(周三),市場分析師Katia Dmitrieva撰文稱,在美國5月就業市場意外改善後,本周初請失業金人數將提醒人們,美國的經濟陣痛仍普遍存在,儘管其正在逐漸消退。
  • 美國上周首次申領失業救濟人數88.5萬人
    騰訊證券12月17日訊,美國上周首次失業救濟金人數意外升至三個月來的最高水平,表明在新冠病例激增和更多企業關停的情況下,勞動力市場的復甦步履蹣跚。 勞工部周四公布數據,截至12月12日的一周,首次申請州常規失業金人數增加了23,000,至885,000人。在未經調整的基礎上,首次申請失業金人數下降了約21,000。 截至12月5日當周,持續申請州失業金的人數減少了273,000,至551萬。
  • 北美觀察丨5000萬人失業背後是美國走不出的悖論
    美國勞工部16日公布數據,美國上周首次申請失業救濟人數為130萬人,連續第17周高於百萬,累計失業人數已經超過5000萬。  失業率高位徘徊 就業市場復甦停滯
  • python圖像處理-gif動圖
    前言相信很多人都有看過動圖,玩過一些小遊戲或者看過定格動畫,可能你很好奇,它們都是怎麼做出來的,其中的原理主要還是利用人的人眼暫留效應,簡單點來說,就是人看過一張圖片後,你把圖片拿走後,眼睛裡還是會短暫的保留一段時間,在這個期間內你在看另外一張圖片
  • Python 動態編譯器PyPy比其他動態編譯器的優點所在
    Python 動態編譯器PyPy比其他動態編譯器的優點所在 PyPy是Python 語言的動態編譯器,在實際的應用中它要比C實現的Python的實際操作步驟更為簡捷,以下是文章的相關內容的描述。
  • 美國確診突破1515萬例,死亡人數超過28.8萬,住院人數超過10.1萬
    根據最新數據統計,全球新冠肺炎累計確診病例數突破6736萬例。目前全球有25個國家累計確診數超過50萬,除美國外,還有印度、巴西、俄羅斯、法國、義大利、英國、西班牙、阿根廷、哥倫比亞、德國、墨西哥、波蘭、伊朗、秘魯、土耳其、南非、烏克蘭、比利時、印尼、伊拉克、智利、荷蘭、捷克和羅馬尼亞。累計死亡病例超過10萬例的則有美國、巴西、印度和墨西哥四個國家。
  • 可口可樂也撐不住了,裁員2200人
    來源:每日經濟新聞(nbdnews)綜合自央視新聞、界面新聞 繼上月媒體和娛樂業巨頭迪士尼宣布計劃裁員32000人後,又一家美國巨頭宣布裁員。 因新冠疫情期間銷售額下降,可口可樂公司宣布將撤掉2200個工作崗位。疫情導致美國很多餐飲經營慘澹甚至關閉,這些都對可口可樂的銷量造成重大影響。
  • 國會認證日後 美國染疫死亡人數驟升 病毒在篩選好壞人?
    凜冬已至,為防失聯,請關注備用號:國會認證日後 美國染疫死亡人數破紀錄。(圖片來源:SILVIO AVILA/AFP via Getty Images)約翰・霍普金斯大學1月6日的數據顯示,美國通報了每天平均增加216,736例新確診病例,同時又有3,963人因新冠狀病毒不幸病故,創下美國的單日死亡人數新紀錄。
  • 【黃金收盤】美國確認人數超過42萬、川普與「美國鍾南山」預計...
    在失業率上升的同時,美國的勞動力參與率大幅下降至62.7%,下降了0.7個百分點,創下自2018年8月以來的最低水平,而之前這一數字一直在逐步上升。  3.美國周四(4月2日)勞工部公布,3月28日當周有664.8萬人申請失業救濟,創下紀錄。經濟學家預計,隨著與冠狀病毒相關的關閉在美國各地蔓延,上周還會有400萬至500萬工人申請失業金。估計高達900萬。
  • Python也能成為畢卡索?我用Python給小姐姐畫了幅油畫
    長的好看又漂亮,舍友經常在我耳邊吹噓,女朋友畫的油畫多麼漂亮。哎。。。經常在我面前撒狗糧,真的是羨慕嫉妒恨呀。所以,小編今天也來畫畫,都說Python無所不能,今天就來秀一下如何把圖片轉化為油畫效果。小編不僅給大家展示結果,還要用白話給大家解釋背後的原理,嘿嘿!一起來看看吧!
  • 【美國最新疫情動態:美國累計確診病例超過1028萬例、死亡人數超24...
    文 / TIER2020-11-09 07:31:57來源:FX168 【美國最新疫情動態:美國累計確診病例超過1028萬例、死亡人數超24.3萬】Worldometers世界實時統計數據顯示,截至北京時間11月9日7時26分,美國累計新冠肺炎確診病例超過
  • 還在煩惱用python在同一圖裡畫多數據曲線嗎?教你6種姿勢搞定
    概要:python的matplotlib作圖很強大,本文教你用6種不同方式解決將多種數據曲線畫到一起。問題:今天,老闆又要一個數據報表,小明選擇用 python來實現。「用matplotlib用來可視化。並且必須用不同顏色標誌每個數據曲線,曲線這些顏色也應該在Python裡自動選擇。」
  • 用python和pygame遊戲編程入門-畫圖實例
    /usr/bin/env pythonimport pygamefrom pygame.locals import *from sys import exitfrom random import *from math import pipygame.init()screen = pygame.display.set_mode((640,