INHOUDSOPGAWE:
- Voorrade
- Stap 1: Begrip van die backend -proses (databasis)
- Stap 2: Python -pakkette/biblioteke wat in die program gebruik word
- Stap 3: Stel u skyf op om Colab te gebruik
- Stap 4: Oorsig van die program
- Stap 5: COVID-19 Dashboard | Deel 1
- Stap 6: COVID-19 Dashboard | Deel 2
- Stap 7: COVID-19 Dashboard | Deel 3
- Stap 8: COVID-19 Dashboard | Deel 4
- Stap 9: COVID-19 Dashboard | Deel 5
- Stap 10: COVID-19 Dashboard | Deel 6
- Stap 11: COVID-19 Dashboard | Deel 7
- Stap 12: COVID-19 Dashboard | Deel 8
- Stap 13: COVID-19 Dashboard | Deel 9
- Stap 14: Lys van lande (Top10) volgens die aantal gevalle | COVID-19 Dashboard
- Stap 15: Totale gevalle op 'n wêreldkaart | COVID-19 Dashboard
- Stap 16: Die resultaat
Video: COVID19 -dashboard op wêreldkaart (met behulp van Python): 16 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
Ek weet dat byna almal van ons die meeste inligting oor COVID19 ken.
En hierdie instruksies gaan oor die skep van 'n borrelkaart om die real-time data (van gevalle) op die wêreldkaart te teken.
Vir meer gemak het ek die program by Github -bewaarplek gevoeg:
github.com/backshell/COVID19dashboard
Voorrade
Daar is geen benodigdhede as sodanig nodig nie, en ons sal die hele rekenaarprogram deur GoogleColab Notebook doen. 'N Gmail -rekening moet dus voldoende wees om mee te begin.
Colab Notebooks / Colaboratory is 'n navorsingsprojek van Google wat ontwerp is om onderwys en navorsing oor masjienleer te versprei. Dit is 'n Jupyter -notaboekomgewing wat nie nodig is om op te stel nie en heeltemal in die wolk loop.
En GEEN installasie is nodig in u masjien nie.
Stap 1: Begrip van die backend -proses (databasis)
Die meeste van elke sagtewareprogramme haal data van die backend af, en die resultaat word geformateer en aan die voorkant gepubliseer. En vir hierdie spesifieke program benodig ons werklike data van COVID19.
Die G. W. C. Whiting School of Engineering het die COVID19 -statistieke deur middel van sy github -rekening gepubliseer:
github.com/CSSEGISandData
Van die begin tot op datum word die COVID19 -landstatistieke in die bewaarplek gepubliseer.
Ons gebruik dus die. CSV-geformateerde lêers daarvan (gesegmenteer in lande) en plaas die data op die wêreldkaart.
Stap 2: Python -pakkette/biblioteke wat in die program gebruik word
Hieronder is die lys met python -pakkette en biblioteke wat ons sou gebruik. Laat ek 'n oorsig gee van die doel van elkeen van hulle.
numpy:
NumPy is 'n biblioteek vir die Python-programmeertaal, wat ondersteuning bied vir groot, multi-dimensionele skikkings en matrikse, tesame met 'n groot versameling wiskundige funksies op hoë vlak om op hierdie skikkings te werk.
pandas:
pandas is 'n sagtewarebiblioteek wat geskryf is vir die Python -programmeertaal vir manipulasie en analise van data.
matplotlib.pyplot:
pyplot is hoofsaaklik bedoel vir interaktiewe erwe en eenvoudige gevalle van programmatiese plotopwekking
plotly.express:
Plotly Express is 'n nuwe Python-visualiseringsbiblioteek op hoë vlak. Eenvoudige sintaksis vir komplekse kaarte.
folium:
folium maak dit maklik om data wat in Python gemanipuleer is, op 'n interaktiewe pamfletkaart te visualiseer.
plotly.graph_objects:
Die plotagtige Python -pakket bestaan om grafiese figure (d.w.s. kaarte, plotte, kaarte en diagramme) voor te stel, te manipuleer en weer te gee, wat verteenwoordig word deur datastrukture waarna ook verwys word as syfers.
see gebore:
Seaborn is 'n Python -data -visualiseringsbiblioteek gebaseer op matplotlib. Dit bied 'n hoëvlak-koppelvlak om aantreklike en insiggewende statistiese grafika te teken.
ipywidgets:
ipywidgets is interaktiewe HTML -widgets vir Jupyter -notaboeke, JupyterLab en die IPython -kern. Notaboeke word lewendig wanneer interaktiewe widgets gebruik word.
Dit is nie nodig om hierdie pakkette te installeer nie, aangesien ons hierdie program heeltemal in Google Colab Notebook sou werk (laat ons dit as 'n kolbe hou gedurende hierdie instruksies).
Stap 3: Stel u skyf op om Colab te gebruik
Skep 'n gids vir u notaboeke in u Drive.
Tegnies gesproke is hierdie stap nie heeltemal nodig as u net in Colab wil begin werk nie. Aangesien Colab van u skyf af werk, is dit egter nie 'n slegte idee om die gids te spesifiseer waarin u wil werk nie. U kan dit doen deur na u Google Drive te gaan, op "New" te klik en dan 'n nuwe gids te skep.
Dan kan u kies om 'n kolonnaboek hier te skep of direk in colab te werk en die gids in die skyf te koppel, wat vir colab -werk geskep is.
Dit is 'n goeie praktyk, anders lyk die kolbe wat ons skep, rommelig in ons rit.
Stap 4: Oorsig van die program
In hierdie program/notaboek sou ons die volgende vir COVID-19 skep:
- Lys van lande volgens die aantal gevalle
- Totale gevalle op 'n wêreldkaart
Stap 5: COVID-19 Dashboard | Deel 1
U kan toekoms gebruik om u kode vandag van Python 2 na Python 3 te stuur - en dit steeds op Python 2 te laat loop.
As u reeds Python 3 -kode het, kan u eerder Future gebruik om Python 2 -verenigbaarheid aan te bied met byna geen ekstra werk nie.
future ondersteun die standaard biblioteekherorganisasie (PEP 3108) via een van die verskillende meganismes, waardeur die meeste geskuifde standaard biblioteekmodules onder hul Python 3 -name en -lokasies in Python 2 verkry kan word.
Stap 6: COVID-19 Dashboard | Deel 2
Die interaksiefunksie (ipywidgets.interact) skep outomaties bedienerskoppelvlak (UI) kontroles om kode en data interaktief te ondersoek. Dit is die maklikste manier om aan die gang te kom met die widgets van IPython.
Stap 7: COVID-19 Dashboard | Deel 3
display_html vertoon die HTML -voorstellings van 'n voorwerp. Dit wil sê, dit soek geregistreerde vertoonmetodes, soos _repr_html_, en noem dit, met die uitslag, indien enige.
Stap 8: COVID-19 Dashboard | Deel 4
'N Lys pakkette (soos verduidelik in stap 2) word na die program ingevoer.
Stap 9: COVID-19 Dashboard | Deel 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')
confirm_df = pd.read_csv ('https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv')
recovered_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')
Soos verduidelik in stap1, lees die data as.csv -lêer uit die bewaarplek.
Stap 10: COVID-19 Dashboard | Deel 6
Ons sal die df -kolomname hernoem na kleinletters
Stap 11: COVID-19 Dashboard | Deel 7
Ons sal die provinsie/staat in staat en land/streek na land verander
Stap 12: COVID-19 Dashboard | Deel 8
Ons sal die totale aantal bevestigde, sterfgevalle en herstelde gevalle bereken.
Stap 13: COVID-19 Dashboard | Deel 9
Ons sal die totale statistieke in HTML -formaat vertoon, aangesien ons vroeër in stap 7 spesifieke biblioteke ingevoer het soos hieronder:
vanaf IPython.core.display invoervertoning, HTML
Stap 14: Lys van lande (Top10) volgens die aantal gevalle | COVID-19 Dashboard
fig = go. FigureWidget (uitleg = go. Layout ())
FigureWidget -funksie gee 'n leë FigureWidget -voorwerp met standaard x- en y -as terug. Interaktiewe Jupyter -widgets het 'n uitlegkenmerk wat 'n aantal CSS -eienskappe blootstel wat 'n invloed het op die uitleg van widgets.
pd. DataFrame
skep dataframe met behulp van woordeboek, met drie kleuragtergronde wat die gevolglike kan invul.
def show_latest_cases (TOP)
sorteer die waardes volgens bevestigde dalende volgorde.
interaksie (show_latest_cases, TOP = '10 ')
Die interaksiefunksie (ipywidgets.interact) skep outomaties bedienerskoppelvlak (UI) kontroles om kode en data interaktief te ondersoek.
ipywLayout = widgets. Layout (border = 'solid 2px green')
skep 'n rand met 2px breedte lyne van groen kleur, sodat die resultaat kan vertoon word.
Stap 15: Totale gevalle op 'n wêreldkaart | COVID-19 Dashboard
world_map = folium. Map (plek = [11, 0], teëls = "cartodbpositron", zoom_start = 2, max_zoom = 6, min_zoom = 2)
Folium is 'n instrument waarmee u soos 'n karterende God kan lyk terwyl al die werk aan die agterkant gedoen word. Dit is 'n Python -omhulsel vir 'n instrument genaamd leaflet.js. Ons gee dit basies minimale instruksies, JS doen baie werk op die agtergrond en ons kry baie, baie cool kaarte. Dis wonderlike goed. Vir die duidelikheid word die kaart tegnies 'n 'Leaflet Map' genoem. Die instrument waarmee u hulle in Python kan noem, word 'Folium' genoem.
Folium maak dit maklik om data wat in Python gemanipuleer is, op 'n interaktiewe Leaflet -kaart te visualiseer. Dit maak dit moontlik om data te bind aan 'n kaart vir choropleth -visualisasies, sowel as om Vincent/Vega -visualisasies deur te gee as merkers op die kaart.
vir i in die reeks (0, len (bevestigde_df))
In 'n opsomming, kry ons al die bevestigde gevalle uit stap 9 -formulering.
folium. Sirkel
Ons skep 'n borrelkaart deur folium. Circle () te gebruik om dit iteratief sirkels by te voeg.
plek = [bevestigde_df.iloc ['lat'], bevestigde_df.iloc ['lang'], uit die bevestigde_df van bevestigde gevalle uit stap5, haal ons die breedte- en lengtegraadwaardes wat ooreenstem met elke ligging/landdata ooreen.
radius = (int ((np.log (confirm_df.iloc [i, -1] +1.00001)))+0.2)*50000, skep 'n radiusvoorwerp om die borrelsirkels op die wêreldkaart oor die lande te teken.
color = 'rooi', fill_color = 'indigo', maak die buitelyn van die borrelsirkel so rooi en die binneste gedeelte as indigo.
en uiteindelik die sirkels op die wêreldkaart met behulp van die tooltip -voorwerp.
Stap 16: Die resultaat
Bylae toon:
- Lys van lande volgens die aantal gevalle
- Totale gevalle op 'n wêreldkaart
Aanbeveel:
Plan lewendige data van 'n temperatuursensor (TMP006) met behulp van MSP432 LaunchPad en Python: 9 stappe
Plot lewendige data van 'n temperatuursensor (TMP006) met behulp van MSP432 LaunchPad en Python: Die TMP006 is 'n temperatuursensor wat die temperatuur van 'n voorwerp meet sonder dat dit met die voorwerp in aanraking hoef te kom. In hierdie tutoriaal teken ons data oor lewendige temperatuur van die BoosterPack (TI BOOSTXL-EDUMKII) met behulp van Python
Beheer oor die hele wêreld met behulp van internet met behulp van Arduino: 4 stappe
Beheer oor die hele wêreld met behulp van internet met behulp van Arduino: Hallo, ek is Rithik. Ons gaan 'n internetbeheerde LED maak met u telefoon. Ons gaan sagteware soos Arduino IDE en Blynk gebruik. Dit is eenvoudig, en as u daarin geslaag het, kan u soveel elektroniese komponente beheer as wat u wil
Monitor versnelling met behulp van Raspberry Pi en AIS328DQTR met behulp van Python: 6 stappe
Monitering van versnelling met behulp van Raspberry Pi en AIS328DQTR Gebruik van Python: Versnelling is eindig, volgens ek volgens sommige wette van die fisika.- Terry Riley 'n Jagluiperd gebruik ongelooflike versnelling en vinnige spoedveranderinge wanneer hy jaag. Die vinnigste wesens aan wal gebruik af en toe sy hoogste tempo om prooi te vang. Die
Slim beheer van die Raspberry Pi -waaier met behulp van Python en Thingspeak: 7 stappe
Slim beheer van die Raspberry Pi -waaier met behulp van Python & Thingspeak: kort oorsig Standaard is die waaier direk gekoppel aan die GPIO - dit impliseer dat dit voortdurend werk. Ondanks die relatiewe stil werking van die waaier, is die deurlopende werking daarvan nie 'n effektiewe gebruik van 'n aktiewe verkoelingstelsel nie. Terselfdertyd
Hoe om van 0 tot 99 te tel met behulp van 8051 mikrobeheerder met 7 segmentweergawe: 5 stappe (met foto's)
Hoe om van 0 tot 99 te tel Met behulp van 8051 mikrobeheerder met 7 -segmentweergawe: Hallo almal, in hierdie tutoriaal gaan ons u vertel hoe om van 0 tot 99 te tel met twee 7 -segment -skerms