全國多地新冠病例0增長,教你用Python畫出當下疫情最火玫瑰圖!

2021-01-08 CDA數據分析師

CDA數據分析師 出品

近日,新冠肺炎防控成果的好消息不斷。

今天我們聊聊,驚豔的疫情直觀圖。

據國家衛健委數據統計, 截止至3月10日24時,31省區市累計治癒出院病歷超6萬,達到61475例。

3月10日,隨著江夏方艙醫院和武昌方艙醫院「休艙大吉」,武漢14家方艙醫院全部休艙。

截止到3月12日24時,全國13地連續16天及以上無新增新冠肺炎確診病例。

看來春天真的是來了,疫情好轉的勢頭已經愈發明顯。想必許多小夥伴也一樣,越來越期待摘下口罩的那天,出門玩耍,出遊踏青,吃起火鍋唱起歌。

不過C君在這裡也要提醒大家,多地病歷0新增不代表零風險,一定要繃住,不要過早的鬆懈!繼續戴好口罩,做好個人防護,避免人群聚集,相信摘下口罩的那天也就不遠啦!

01這道彩虹真贊!疫情玫瑰圖火了

與此同時,最近刷遍微博的這個疫情直觀圖火了!來自央視新聞官微的這個圖一經發出就令人驚豔,彩虹的配色,直觀的展現出目前全國多地病例0新增的數據。

一時間#這道彩虹真贊#的話題在微博上閱讀達到2.6億,討論3.4萬。大家在欣喜疫情好轉的同時,都在問這個圖叫什麼呀?真太驚豔了。

微博上也出現了各種解答,有的說是餅圖,扇形圖,甚至還有的說是蝸牛圖,漩渦圖的…其實準確的來說,這個圖叫做南丁格爾玫瑰圖。

02享譽全球的白衣天使佛羅倫斯南丁格爾

南丁格爾玫瑰圖(Nightingale rose diagram)又名雞冠花圖、極坐標區域圖。統計學家和醫學改革家佛羅倫斯南丁格爾 (Florence Nightingale) 曾在克裡米亞戰爭期間使用這種圖表傳達士兵身亡情況,故得名。

說起南丁格爾玫瑰圖,就不得不聊一聊它的發明者,世界上第一個真正的女護士——弗羅倫斯·南丁格爾。

弗羅倫斯·南丁格爾是著名的英國護士和統計學家,於1820年5月12日出生於義大利一個來自英國上流社會的家庭。南丁格爾在德國學習護理後,曾往倫敦的醫院工作。於1853年成為倫敦慈善醫院的護士長。

19世紀50年代,英國、法國、土耳其和俄國進行了克裡米亞戰爭,當時英國戰士的死亡率高達42%。南丁格爾主動申請,她和38名女性志願者護士的工作人員,前往戰地醫院服務。

到達戰地醫院後,南丁格爾克服種種困難,改善醫院後勤服務和環境衛生,建立醫院管理制度,提高護理質量,使傷病員死亡率從42%,急劇下降到2%。同時南丁格爾不僅表現出非凡的組織才能,而且對傷病員的關懷愛護感人至深。因此她也被稱為被稱為「克裡米亞的天使」;南丁格爾經常在黑夜中提燈巡視病房,又被譽為「提燈女士」(The Lady with the Lamp)。

由於南丁格爾的貢獻,讓昔日地位低微的護士,社會地位與形象都大為提高,成為崇高的象徵。「南丁格爾」也成為護士精神的代名詞。

03數據可視化先驅南丁格爾玫瑰圖

除了出色的醫護才能,南丁格爾也有很強的數學天分,這也讓她在之後成為視覺表現和統計圖形的先驅。

在克裡米亞的戰地醫院工作時,她分析過堆積如山的軍事檔案,發現在克裡米亞戰役中,英軍死亡的原因是在戰場外感染疾病,及在戰場上受傷後缺乏適當護理而傷重致死,真正死在戰場上的人反而不多。

由於當時資料統計的結果往往不受人重視,她發展出一種色彩繽紛的圖表形式——南丁格爾玫瑰圖,讓數據能夠更加讓人印象深刻。她用這個圖標來表達軍醫院季節性的死亡率,向不會閱讀統計報告的國會議員,報告克裡米亞戰爭的醫療條件。

左下說明簡譯

各色塊圓餅區均由圓心往外的面積來表現數字藍色區域:死於原本可避免的感染的士兵數紅色區域:因受傷過重而死亡的士兵數黑色區域:死於其它原因的士兵數1854年10月、1855年4月的紅黑區域恰好相等1856年1月與2月的藍、黑區域恰好相等1854年11月紅色區域中的黑線指出該月的黑色區域大小正是這種清晰易懂的數據展現形式,改變了當時包括維多利亞女王在內的高層人士的認知,導致他們做出醫事改革的決策。

普通柱形圖的坐標系是直角坐標系,而南丁格爾玫瑰圖的坐標系是極坐標系,使用圓弧的半徑長短表示數據的大小。比起一般的柱狀圖,它要更有衝擊性,是非常一目了然的統計圖。

用例

那南丁格爾玫瑰圖都有哪些用例呢?

除了對比不同分類的大小,如各國製造指數的對比:

Facebook 和 Twitter的用戶對比:

還可以用於表示披頭四歌曲的音調。

還有最近火了的全國各地0新增彩虹圖。

04教你用Python畫出南丁格爾玫瑰圖

那麼你想知道,怎麼才能做出如此驚豔的南丁格爾玫瑰圖嗎?

常見的方法有用Excel,然而做起來過程繁瑣還還原度低。

要知道,萬物皆可Python。

除了用Excel,今天C君就來教教你,怎麼用Python做南丁格爾玫瑰圖,保證高還原度:

左圖是原圖,右圖是用pyechart做的。

具體步驟如下:

我們使用pyecharts包進行南丁格爾玫瑰圖的繪製,如果你沒有安裝pyecharts,可以使用以下代碼進行pip安裝。

pip install pyecharts

南丁格爾玫瑰圖和餅圖類似,算是餅圖的一種變形,用法也一樣,主要用在需要查看佔比的場景中。

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

import pandas as pdfrom pyecharts.charts import Piefrom pyecharts import options as opts

然後準備需要的數據,所用信息來自於國家衛健委官方網站,整理之後的數據使用列表的形式進行存儲,其中provinces存儲省份名稱,num存儲確診病例連續多日零新增的數字,color_series列表存儲顏色用於後續的繪圖使用。

provinces = ['北京','上海','黑龍江','吉林','遼寧','內蒙古','新疆','西藏','青海','四川','雲南','陝西','重慶','貴州','廣西','海南','澳門','湖南','江西','福建','安徽','浙江','江蘇','寧夏','山西','河北','天津']num = [1,1,1,17,9,22,23,42,35,7,20,21,16,24,16,21,37,12,13,14,13,7,22,8,16,13,13]color_series = ['#FAE927','#E9E416','#C9DA36','#9ECB3C','#6DBC49','#37B44E','#3DBA78','#14ADCF','#209AC9','#1E91CA','#2C6BA0','#2B55A1','#2D3D8E','#44388E','#6A368B''#7D3990','#A63F98','#C31C88','#D52178','#D5225B','#D02C2A','#D44C2D','#F57A34','#FA8F2F','#D99D21','#CF7B25','#CF7B25','#CF7B25']

接下來使用pandas對數據進行降序排列以方便後續的繪圖,並提取數據。

# 創建數據框df = pd.DataFrame({'provinces': provinces, 'num': num})# 降序排序df.sort_values(by='num', ascending=False, inplace=True)# 提取數據v = df['provinces'].values.tolistd = df['num'].values.tolist

最後使用Pyecharts庫中的Pie類進行圖形的繪製,代碼說明如下,其中的配置項可以在pyecharts官網進行查看。圖形生成在本地的html網頁中。

# 實例化Pie類pie1 = Pie(init_opts=opts.InitOpts(width='1350px', height='750px'))# 設置顏色pie1.set_colors(color_series)# 添加數據,設置餅圖的半徑,是否展示成南丁格爾圖pie1.add("", [list(z) for z in zip(v, d)],radius=["30%", "135%"],center=["50%", "65%"],rosetype="area")# 設置全局配置項pie1.set_global_opts(title_opts=opts.TitleOpts(title='玫瑰圖示例'),legend_opts=opts.LegendOpts(is_show=False),toolbox_opts=opts.ToolboxOpts)# 設置系列配置項pie1.set_series_opts(label_opts=opts.LabelOpts(is_show=True, position="inside", font_size=12,formatter="{b}:{c}天", font_,font_weight="bold", font_family="Microsoft YaHei"),)# 生成html文檔pie1.render('南丁格爾玫瑰圖.html')

生成的圖如下:

最後,再自己加一下中間的字就大功告成

結語:

怎麼樣,用Python作出如此絢爛的彩虹玫瑰圖,你學會了嗎?絢爛玫瑰,意味著我們終將完全戰勝疫情,大家又可以開始豐富多彩的社會生活。

不過C君還是要提醒大家一下,雖然目前疫情大有轉好,但大家一定不能掉以輕心!堅持做好防護哦,直到疫情完全解除的那一天。奧利給!

相關焦點

  • 美國的新冠疫情病例為什麼這麼多?
    *本文轉載自安邦創始人陳功先生個人微信公眾號「野望山河」 美國現在的新冠疫情病例數字已經突破了1300萬人,美國的各家電視臺也紛紛開始用悲傷的語調表達沉痛哀悼。當然在世界各地,想必也有很多人說,美國完蛋了!
  • 用Python畫朵玫瑰,只要五分鐘
    最近一個項目在用python,想著這次不用java了,用python給媽媽個禮物吧。Turtle庫是Python語言中一個非常強大的繪製圖像的函數庫,她提供了很多強大的方法,可以方便快速的繪圖,今天我們就來試一下,畫朵玫瑰送給媽媽。
  • 為何國內多地出現本土病例?新冠肺炎疫情何時終止?張文宏給出最新判斷
    視頻 羊城晚報全媒體記者 梁喻國內多地出現本地確診病例令人心憂,新冠肺炎疫情到底有沒有終止的可能性?在中國,最近的第二波疫情,到目前為止我們有近2000例輸入病例,這個數字目前還在增加,病死率卻低到0,這個病死率的降低,讓很多人誤以為是病毒的毒力減弱了,實際上不是。
  • 新冠病毒確診數猛增!最好和最壞的情況是什麼?
    據國家衛健委公布數據顯示,全國新型冠狀病毒感染的肺炎疫情確診病例在 2 月 3 日(0 時-24 時)當天新增 3,235 例。其中,湖北省新確診了 2,345 例。截至 2 月 4 日 9 時,全國累計報告確診病例 20,472 例,包括重症病例 2,788例;累計死亡病例 425 例;治癒出院病例 633 例;共有疑似病例 23,214 例。
  • 全球新冠疫情持續蔓延 確診病例累計已近5650萬例
    全球疫情持續蔓延,美洲地區,美國總統第三順位繼任者、參議院臨時議長格拉斯利感染新冠病毒,巴西疫情再度面臨增高風險;歐洲地區,英國蘇格蘭11個地區進入最嚴封鎖,法國因再次封鎖下調2021年經濟增長預期;亞洲地區,俄羅斯「衛星-V」疫苗臨床試驗將在印度進行,伊朗推出20分鐘快速檢測試劑盒。
  • 全球新冠死亡人數突破百萬 恐怖數字仍在迅速增長
    中國早已控制住疫情,但在世界範圍內,死亡人數仍在以每天大約5400例的可怕速度增長。世衛組織專家警告,疫苗推廣使用前,全球死亡人數還可能翻番。站在「破百萬」的悲劇性節點觀察這場嚴重疫情,國際媒體關注最多的當屬以下幾點:作為世界頭號強國,美國這次抗疫遭遇「令人震驚的失敗」;印度成為新增病例增長最快的國家,累計確診病例數正直逼美國;歐洲等地疫情快速反彈,形勢不容樂觀。
  • 全球新冠死亡人數突破百萬,恐怖數字仍在迅速增長
    「我們的世界到達一個令人痛苦的裡程碑:100萬人因新冠病毒失去生命。」北京時間29日早晨,聯合國秘書長古特雷斯發表這一聲明時,全球眾多媒體也在不約而同地聚焦這個「噩夢般的數字」。不僅吞噬掉眾多生命,新冠肺炎疫情也摧殘著經濟,改變了人們的生活方式。中國早已控制住疫情,但在世界範圍內,死亡人數仍在以每天大約5400例的可怕速度增長。
  • 國內4地疫情突發,停運、停課!新增病例感染來源查明!
    「畢竟現在不是年初,全國也就出現那麼幾例,還沒上兩位數,真的有必要封城麼?」很有必要!這次的疫情反撲與前幾次不同,有三個最顯著的特徵!第一,本土新增感染病例持續的時間實在有點長!我整體羅列看了一下11月份本土新增數據。
  • 日本發現新變種新冠病毒 多地進入緊急狀態 東京奧運會前景黯淡
    來源:21世紀經濟報導原標題:日本發現新變種新冠病毒 多地區進入「緊急狀態」 東京奧運會前景再添陰影此次緊急狀態覆蓋範圍若進一步擴大,將令日本經濟面臨「二次衰退」的風險。日本疫情再次告急。日本厚生勞動省1月10日表示,從巴西入境日本的4名旅客被確診感染了變異新冠病毒,並且這種變異病毒與在英國、南非發現的變異新冠病毒不完全相同。
  • 沸點| 世衛:非洲新冠確診和死亡病例出現較大增長;黑龍江新增13例...
    世衛:非洲新冠確診和死亡病例出現較大增長安倍宣布向每位國民發放10萬日元日本大津市政府疑發生群體感染央行:數字人民幣封閉測試,不會影響人民幣發行流通2020年基本養老金統一上調5%教育部:中小學教材不得夾帶教輔網址二維碼等信息多地明確暑假時間
  • 疫情之下,數據的 100 種表達
    1 實時地圖澎湃新聞·美數課:新型冠狀病毒肺炎病例實時更新地圖丁香園:新冠病毒最新實時疫情地圖北京大學可視化與可視分析實驗室:疫情晴雨表等系列交互地圖眼看著疫情從最初的一張靜態長圖到各家媒體標配的動態地圖,並隨疫情發展不斷完善。
  • 德陽疾控新冠疫情簡訊(1月8日)6地調整為中風險地區,河北本輪疫情...
    全國疫情總況 (1月8日發布) 四川省疫情最新情況 (1月8日發布) 1月7日0-24時,四川無新增新型冠狀病毒肺炎確診病例
  • 全球新冠病例超過3000萬,許多北半球國家面臨第二波疫情
    新京報快訊(記者 謝蓮)據約翰斯·霍普金斯大學統計數據,截至北京時間9月18日16時,全球新冠肺炎確診病例超過3000萬例,達到30193188例。累計死亡病例接近95萬例,達到946346例。其中,美國是確診數最多的國家,累計確診病例超過667萬例,佔到全球總病例的22%。美國死亡病例也位居全球首位,目前已逼近20萬例。緊隨美國之後的是印度,該國累計確診病例521萬例,累計死亡病例8.4萬例。BBC指出,印度的疫情擴散速度要遠快於其他國家,近段時間以來單日新增確診病例連續突破9萬例。
  • 全球新冠疫情持續蔓延 確診病例累計逾5528萬例
    全球疫情持續蔓延,美洲地區,美國多個州新增病例數超過了第一波疫情,巴西疫情期間市政選舉現場出現大量人群擁擠;歐洲地區,英國首相詹森接觸感染者進入隔離,俄羅斯交通部長新冠檢測呈陽性;亞洲地區,印度著名演員查特吉感染後因併發症去世,伊朗宣布全面動員遏制疫情擴散。
  • Python為什麼這麼火?小孩子適合學習python編程嗎?
    但自從Python出現後,程式語言和我們日常生活中的鴻溝被悄悄打破了,越來越多的人開始使用它,甚至開始愛上它。Python出現的時間也就短短幾年,但就是在這短短幾年內,它打破了長久以來程式語言被三巨頭(C/JAVA/C++)統治的局面,蟬聯各大編程熱門語言排行榜榜首,成為當下最熱門的明星級程式語言之一。
  • 美媒:美國11月新冠病例數超過大多數國家全年總數
    據美國哥倫比亞廣播公司(CBS)報導,美國11月報告的新增新冠病毒感染病例超過400萬,高於除印度和巴西以外的世界上任何國家的全年總數。公共衛生專家警告說,美國在2020年最後一個月將繼續出現破紀錄的數字。
  • 集中全部精力對付新冠;那個畫...
    【張江消毒機器人成疫情「爆款」】   ■張文宏醫生對話留學生:洋蔥炒雞蛋是很好的菜,回國飛機上最好吃牛肉乾,但別和坐你旁邊的人一起摘口罩。【詳情】   更多實時內容請關注新民晚報全媒體【統籌做好疫情防控和經濟社會發展】專題報導。
  • 各年齡段人群普遍易感染新冠病毒;病毒尚未明顯變異;歐亞多國感染...
    2-中國-世衛組織聯合考察專家組發布會重點歸納中國-世界衛生組織新冠肺炎聯合專家考察組24日舉行發布會,考察組中方組長梁萬年表示:通過對不同地點分離出的104株新冠病毒株進行全基因組測序,證實同源性達99.9%,提示病毒尚未發生明顯變異。
  • 新冠疫情當下,大數據技術能為我們做些什麼
    打開APP 新冠疫情當下,大數據技術能為我們做些什麼 佚名 發表於 2020-04-05 08:26:00 (文章來源:網絡整理
  • 行業|新冠疫情會是發展網際網路+醫療健康的催化劑嗎?
    疫情吹哨人李文亮醫生、推遲婚禮上一線的彭銀華醫生、倒在抗擊疫情一線的武昌醫院院長劉智明......如果時光能夠倒流,這麼多鮮活的生命,還會以這麼壯烈的方式離開我們嗎?武漢封城,全國抗疫,病毒全球蔓延……如果時光能夠倒流,新冠疫情會得到更好的控制嗎?未來,AI是否能成為預測、診斷疾病以及疾病數據管理的好幫手?這次新冠疫情又是否能成為發展網際網路+醫療健康的催化劑?