Përmbajtje:

Paneli i COVID19 në Hartën Botërore (duke përdorur Python): 16 hapa
Paneli i COVID19 në Hartën Botërore (duke përdorur Python): 16 hapa

Video: Paneli i COVID19 në Hartën Botërore (duke përdorur Python): 16 hapa

Video: Paneli i COVID19 në Hartën Botërore (duke përdorur Python): 16 hapa
Video: Sydney, Australia Walking Tour - 4K60fps with Captions - Prowalk Tours 2024, Nëntor
Anonim
Paneli i COVID19 në Hartën Botërore (duke përdorur Python)
Paneli i COVID19 në Hartën Botërore (duke përdorur Python)

Unë e di që pothuajse të gjithë ne dimë shumicën e informacionit në lidhje me COVID19.

Dhe kjo e udhëzueshme ka të bëjë me krijimin e një harte flluskë, për të vizatuar të dhënat në kohë reale (të rasteve) në hartën e botës.

Për më shumë lehtësi, kam shtuar programin në depon e Github:

github.com/backshell/COVID19dashboard

Furnizimet

Nuk kërkohet furnizim si i tillë dhe ne do ta bënim të gjithë programin kompjuterik përmes GoogleColab Notebook. Pra, një llogari gmail duhet të jetë e mjaftueshme për të filluar.

Fletoret Colab / Colaboratory është një projekt kërkimor i Google i krijuar për të ndihmuar në përhapjen e edukimit dhe kërkimit të mësimit të makinerisë. It'sshtë një mjedis fletore Jupyter që nuk kërkon konfigurim për t'u përdorur dhe funksionon tërësisht në re.

Dhe nuk kërkohet instalim në makinën tuaj.

Hapi 1: Kuptimi i Procesit të Backend (baza e të dhënave)

Shumica e çdo programi softuerik merr të dhëna nga pjesa e pasme dhe rezultati formatohet dhe publikohet në pjesën e përparme. Dhe për këtë program të veçantë, ne do të kërkonim të dhëna reale të COVID19.

G. W. C. Shkolla e Inxhinierisë Whiting ka publikuar statistikat e COVID19 përmes llogarisë së saj github:

github.com/CSSEGISandData

Nga fillimi e deri më sot, statistikat e mençura të vendit COVID19 publikohen në depo.

Pra, ne do të përdorim skedarët e tyre të formatuar. CSV (të ndara sipas vendeve sipas rreshtit) dhe do të vizatonim të dhënat në hartën e botës.

Hapi 2: Pakot/bibliotekat Python të përdorura në Program

Më poshtë janë lista e paketave python dhe bibliotekat, që ne do të përdorim. Më lejoni të jap një përmbledhje të qëllimit të secilës prej tyre.

i mpirë

NumPy është një bibliotekë për gjuhën e programimit Python, duke shtuar mbështetje për vargje dhe matrica të mëdha, shumë-dimensionale, së bashku me një koleksion të madh të funksioneve matematikore të nivelit të lartë për të vepruar në këto vargje.

pandat:

pandas është një bibliotekë softuerike e shkruar për gjuhën programuese Python për manipulimin dhe analizën e të dhënave.

matplotlib.pyplot:

pyplot është menduar kryesisht për komplote interaktive dhe raste të thjeshta të gjenerimit të komploteve programatikë

plotly.express:

Plotly Express është një bibliotekë e re e vizualizimit të nivelit të lartë Python. Sintaksë e thjeshtë për tabela komplekse.

folium:

folium e bën të lehtë vizualizimin e të dhënave të manipuluara në Python në një hartë fletëpalosjesh ndërvepruese.

plotësisht.objektet_grafike:

Paketa komplote Python ekziston për të krijuar, manipuluar dhe dhënë figura grafike (p.sh. tabela, komplote, harta dhe diagrame) të përfaqësuara nga struktura të të dhënave të referuara edhe si figura.

i lindur nga deti:

Seaborn është një bibliotekë e vizualizimit të të dhënave Python e bazuar në matplotlib. Ajo siguron një ndërfaqe të nivelit të lartë për vizatimin e grafikave statistikore tërheqëse dhe informative.

ipywidgets:

ipywidgets janë vegla ndërvepruese HTML për fletoret Jupyter, JupyterLab dhe kernel IPython. Fletoret bëhen të gjalla kur përdoren widget -at interaktiv.

Instalimi i këtyre paketave nuk kërkohet pasi ne do ta punonim këtë program tërësisht në Google Colab Notebook (ju lejon ta mbani atë si colab gjatë gjithë këtij udhëzimi).

Hapi 3: Konfigurimi i diskut tuaj, për të përdorur Colab

Konfigurimi i diskut tuaj, për të përdorur Colab
Konfigurimi i diskut tuaj, për të përdorur Colab
Vendosja e diskut tuaj, për të përdorur Colab
Vendosja e diskut tuaj, për të përdorur Colab

Në Diskun tuaj, krijoni një dosje për fletoret tuaja.

Duke folur teknikisht, ky hap nuk është plotësisht i nevojshëm nëse doni të filloni të punoni në Colab. Sidoqoftë, meqenëse Colab po funksionon nga disku juaj, nuk është ide e keqe të specifikoni dosjen ku dëshironi të punoni. Ju mund ta bëni këtë duke shkuar në Google Drive tuaj dhe duke klikuar "E Re" dhe më pas duke krijuar një dosje të re.

Atëherë mund të zgjidhni të krijoni libër colabnote këtu ose të filloni të punoni drejtpërdrejt në colab dhe të lidhni dosjen në makinë, e cila është krijuar për punë colab.

Kjo është një praktikë e mirë, përndryshe colab që krijojmë mund të duket e çrregullt në lëvizjen tonë.

Hapi 4: Pasqyrë e Programit

Në këtë program/fletore, ne do të krijonim sa vijon për COVID-19:

  • Lista e vendeve sipas numrit të rasteve
  • Rastet totale në një hartë botërore

Hapi 5: Paneli i COVID-19 | Pjesa 1

Paneli i COVID-19 | Pjesa 1
Paneli i COVID-19 | Pjesa 1

Ju mund të përdorni të ardhmen për të ndihmuar në transferimin e kodit tuaj nga Python 2 në Python 3 sot - dhe akoma ta përdorni atë në Python 2.

Nëse tashmë keni kodin Python 3, mund të përdorni të ardhmen për të ofruar pajtueshmëri Python 2 me pothuajse asnjë punë shtesë.

e ardhmja mbështet riorganizimin standard të bibliotekës (PEP 3108) përmes një prej disa mekanizmave, duke lejuar që modulet më të lëvizura të bibliotekës të qasen nën emrat dhe vendndodhjet e tyre Python 3 në Python 2.

Hapi 6: Paneli i COVID-19 | Pjesa 2

Paneli i COVID-19 | Pjesa 2
Paneli i COVID-19 | Pjesa 2

Funksioni i ndërveprimit (ipywidgets.interact) krijon automatikisht kontrolle të ndërfaqes së përdoruesit (UI) për eksplorimin e kodit dhe të dhënave në mënyrë interaktive. Wayshtë mënyra më e lehtë për të filluar të përdorni widget -et e IPython.

Hapi 7: Paneli i COVID-19 | Pjesa 3

Paneli i COVID-19 | Pjesa 3
Paneli i COVID-19 | Pjesa 3

display_html shfaq përfaqësimet HTML të një objekti. Kjo do të thotë, ai kërkon metoda të regjistruara të shfaqjes, të tilla si _repr_html_, dhe i thërret ato, duke shfaqur rezultatin, nëse ka.

Hapi 8: Paneli i COVID-19 | Pjesa 4

Paneli i COVID-19 | Pjesa 4
Paneli i COVID-19 | Pjesa 4

Lista e paketave (siç shpjegohet në hapin 2) importohet në program.

Hapi 9: Paneli i COVID-19 | Pjesa 5

death_df = pd.read_csv ('https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_deaths_global.csv')

konfirmuar_df = pd.read_csv ('https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirm_global.csv')

mbuluar_df = pd.read_csv ('https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_recovered_global.csv')

country_df = pd.read_csv ('https://raw.githubusercontent.com/CSSEGISandData/COVID-19/web-data/data/cases_country.csv')

Siç shpjegohet në hapin 1, leximi i të dhënave si skedar.csv nga depoja.

Hapi 10: Paneli i COVID-19 | Pjesa 6

Paneli i COVID-19 | Pjesa 6
Paneli i COVID-19 | Pjesa 6

Ne do t'i riemërtojmë emrat e kolonës df në shkronja të vogla

Hapi 11: Paneli i COVID-19 | Pjesa 7

Paneli i COVID-19 | Pjesa 7
Paneli i COVID-19 | Pjesa 7

Ne do të ndryshojmë krahinën/shtetin në shtet dhe vendin/rajonin në vend

Hapi 12: Paneli i COVID-19 | Pjesa 8

Paneli i COVID-19 | Pjesa 8
Paneli i COVID-19 | Pjesa 8

Ne do të llogarisim numrin e përgjithshëm të rasteve të konfirmuara, vdekjeve dhe të shëruarve.

Hapi 13: Paneli i COVID-19 | Pjesa 9

Paneli i COVID-19 | Pjesa 9
Paneli i COVID-19 | Pjesa 9
Paneli i COVID-19 | Pjesa 9
Paneli i COVID-19 | Pjesa 9

Ne do të shfaqim statistikat totale në formatin HTML, pasi kemi importuar biblioteka të veçanta në hapin 7 më herët si më poshtë:

nga IPython.core.display display import, HTML

Hapi 14: Lista e Shteteve (Top10) sipas Numrit të Rasteve | Paneli i COVID-19

Lista e vendeve (Top10) sipas numrit të rasteve | Paneli i COVID-19
Lista e vendeve (Top10) sipas numrit të rasteve | Paneli i COVID-19
Lista e vendeve (Top10) sipas numrit të rasteve | Paneli i COVID-19
Lista e vendeve (Top10) sipas numrit të rasteve | Paneli i COVID-19

fig = shko. FiguraWidget (paraqitja = shko. Paraqitja ())

Funksioni FigureWidget kthen një objekt të zbrazët FiguraWidget me boshte të paracaktuar x dhe y. Miniaplikacionet ndërvepruese Jupyter kanë një atribut të paraqitjes që ekspozon një numër të pronave CSS që ndikojnë në mënyrën e vendosjes së widget -eve.

pd. DataFrame

krijon një kornizë të dhënash duke përdorur fjalorin, me tre prejardhje ngjyrash që rezultati të popullohet.

def show_latest_cases (TOP)

rendit vlerat sipas rendit zbritës të konfirmuar.

ndërveprojnë (tregojnë_ rastet më të fundit_, TOP = '10 ')

Funksioni i ndërveprimit (ipywidgets.interact) krijon automatikisht kontrolle të ndërfaqes së përdoruesit (UI) për eksplorimin e kodit dhe të dhënave në mënyrë interaktive.

ipywLayout = widget. Layout (kufiri = 'solid 2px jeshil')

krijon një kufi me vija të gjera 2px me ngjyrë të gjelbër, që rezultati të shfaqet.

Hapi 15: Rastet totale në një hartë botërore | Paneli i COVID-19

Rastet totale në një hartë botërore | Paneli i COVID-19
Rastet totale në një hartë botërore | Paneli i COVID-19
Rastet totale në një hartë botërore | Paneli i COVID-19
Rastet totale në një hartë botërore | Paneli i COVID-19

harta_botërore = folium. Harta (vendndodhja = [11, 0], pllaka = "kartodbpositron", zoom_start = 2, max_zoom = 6, min_zoom = 2)

Folium është një mjet që ju bën të dukeni si një hartë e Zotit ndërsa e gjithë puna është bërë në pjesën e pasme.'Sshtë një mbështjellës Python për një mjet të quajtur fletëpalosje.js. Ne në thelb i japim udhëzime minimale, JS bën shumë punë në sfond dhe marrim disa harta shumë, shumë të lezetshme. Stuffshtë gjë e madhe. Për qartësi, harta teknikisht quhet 'Harta e fletëpalosjes'. Mjeti që ju lejoni t'i quani në Python quhet 'Folium'.

Folium e bën të lehtë vizualizimin e të dhënave të manipuluara në Python në një hartë të fletëpalosjes interaktive. Ai mundëson lidhjen e të dhënave në një hartë për vizualizimet e koropthit, si dhe kalimin e vizualizimeve të Vincent/Vega si shënues në hartë.

për i në rang (0, len (konfirmuar_df))

Në një lak for, ne do të marrim të gjitha rastet e konfirmuara nga formulimi i hapit 9.

folium. Rrethi

Ne krijojmë një hartë flluskë duke përdorur folium. Rrethi () për të shtuar në mënyrë iterative qarqe.

vendndodhja = [konfirmuar_df.iloc ['lat'], konfirmuar_df.iloc ['gjatë'],

nga konfirmimi_df i rasteve të konfirmuara nga hapi 5, ne nxjerrim vlerat e gjerësisë dhe gjatësisë që korrespondojnë me secilën të dhënë të vendit/vendit.

rreze = (int ((np.log (konfirmuar_df.iloc [i, -1] +1.00001))))+0.2)*50000,

duke krijuar objekt rreze për të vizatuar rrathët e flluskave në hartën e botës nëpër vende.

ngjyra = 'e kuqe', fill_color = 'indigo',

duke e bërë skicën e rrethit të flluskave të kuqe dhe zonën e brendshme si indigo.

dhe së fundi duke komplotuar qarqet në hartën e botës duke përdorur objektin tooltip.

Hapi 16: Rezultati

Rezultati!
Rezultati!
Rezultati!
Rezultati!

Shtojca tregon:

  1. Lista e vendeve sipas numrit të rasteve
  2. Rastet totale në një hartë botërore

Recommended: