Съдържание:

Табло за управление на COVID19 на картата на света (с помощта на Python): 16 стъпки
Табло за управление на COVID19 на картата на света (с помощта на Python): 16 стъпки

Видео: Табло за управление на COVID19 на картата на света (с помощта на Python): 16 стъпки

Видео: Табло за управление на COVID19 на картата на света (с помощта на Python): 16 стъпки
Видео: CS50 2013 - Week 9, continued 2024, Ноември
Anonim
Табло за управление на COVID19 на картата на света (с помощта на Python)
Табло за управление на COVID19 на картата на света (с помощта на Python)

Знам, че почти всички ние знаем най -много информация за COVID19.

И тази инструкция е за създаване на балонна карта, за нанасяне на данни в реално време (на случаи) на картата на света.

За по -голямо удобство добавих програмата към хранилището на Github:

github.com/backshell/COVID19dashboard

Консумативи

Не се изискват консумативи като такива и бихме направили цялата компютърна програма чрез GoogleColab Notebook. Така че акаунтът в gmail трябва да е достатъчен за начало.

Colab Notebooks / Colaboratory е изследователски проект на Google, създаден, за да подпомогне разпространението на образование и изследвания за машинно обучение. Това е среда за преносими компютри на Jupyter, която не изисква настройка за използване и работи изцяло в облака.

И НЕ се изисква инсталация във вашата машина.

Стъпка 1: Разбиране на бекенд процеса (база данни)

Повечето от всички софтуерни програми извличат данни от бекенда и резултатът се форматира и публикува в предния край. И за тази конкретна програма бихме искали реални данни за COVID19.

G. W. C. Инженерното училище Whiting публикува статистиката за COVID19 чрез своя акаунт в github:

github.com/CSSEGISandData

От началото до момента в хранилището се публикуват статистическите данни за COVID19 по държави.

Така че бихме използвали форматираните от тях. CSV файлове (сегментирани по редици на държави) и начертахме данните на картата на света.

Стъпка 2: Пакети/библиотеки на Python, използвани в програмата

По -долу е даден списък на пакети и библиотеки на python, които ще използваме. Позволете ми да дам преглед на предназначението на всеки от тях.

numpy:

NumPy е библиотека за езика за програмиране на Python, добавяйки поддръжка за големи, многоизмерни масиви и матрици, заедно с голяма колекция от математически функции на високо ниво за работа с тези масиви.

панди:

pandas е софтуерна библиотека, написана за езика за програмиране на Python за манипулиране и анализ на данни.

matplotlib.pyplot:

pyplot е предназначен главно за интерактивни сюжети и прости случаи на генериране на програмни сюжети

plotly.express:

Plotly Express е нова библиотека за визуализация на Python на високо ниво. Прост синтаксис за сложни диаграми.

фолиум:

folium улеснява визуализирането на данни, които са манипулирани в Python на интерактивна карта с листовки.

plotly.graph_objects:

Парцелният пакет на Python съществува за създаване, манипулиране и изобразяване на графични фигури (т.е. диаграми, графики, карти и диаграми), представени от структури от данни, наричани също фигури.

морски:

Seaborn е библиотека за визуализация на данни на Python, базирана на matplotlib. Той осигурява интерфейс на високо ниво за рисуване на атрактивни и информативни статистически графики.

ipywidgets:

ipywidgets са интерактивни HTML джаджи за тетрадки Jupyter, JupyterLab и ядрото на IPython. Бележниците оживяват, когато се използват интерактивни джаджи.

Инсталирането на тези пакети не се изисква, тъй като ще работим с тази програма изцяло в Google Colab Notebook (нека да я запазим като colab в цялата инструкция).

Стъпка 3: Настройка на вашето устройство, за да използвате Colab

Настройка на вашето устройство, за да използвате Colab
Настройка на вашето устройство, за да използвате Colab
Настройка на вашето устройство, за да използвате Colab
Настройка на вашето устройство, за да използвате Colab

В своя диск създайте папка за вашите бележници.

Технически погледнато, тази стъпка не е напълно необходима, ако искате просто да започнете работа в Colab. Въпреки това, тъй като Colab работи на вашия диск, не е лоша идея да посочите папката, в която искате да работите. Можете да направите това, като отидете в Google Диск и щракнете върху „Ново“и след това създадете нова папка.

След това можете да изберете да създадете colabnotebook тук или да започнете да работите директно в colab и да свържете папката в устройството, която е създадена за работа в colab.

Това е добра практика, в противен случай колекцията, която създаваме, може да изглежда объркана в нашето желание.

Стъпка 4: Преглед на програмата

В тази програма/бележник ще създадем следното за COVID-19:

  • Списък на страните по броя на случаите
  • Общо случаи на карта на света

Стъпка 5: Табло за управление на COVID-19 | Част 1

Табло за управление на COVID-19 | Част 1
Табло за управление на COVID-19 | Част 1

Можете да използвате future, за да помогнете за пренасянето на вашия код от Python 2 към Python 3 днес - и все още да го стартирате на Python 2.

Ако вече имате код на Python 3, вместо това можете да използвате future, за да предложите съвместимост с Python 2, почти без допълнителна работа.

future поддържа стандартната библиотечна реорганизация (PEP 3108) чрез един от няколко механизма, което позволява достъп до повечето преместени стандартни библиотечни модули под техните имена и местоположения в Python 3 в Python 2.

Стъпка 6: Табло за управление на COVID-19 | Част 2

Табло за управление на COVID-19 | Част 2
Табло за управление на COVID-19 | Част 2

Функцията за взаимодействие (ipywidgets.interact) автоматично създава контроли за потребителски интерфейс (UI) за интерактивно проучване на код и данни. Това е най -лесният начин да започнете да използвате приспособленията на IPython.

Стъпка 7: Табло за управление на COVID-19 | Част 3

Табло за управление на COVID-19 | Част 3
Табло за управление на COVID-19 | Част 3

display_html показва HTML представянията на обект. Тоест, той търси регистрирани методи за показване, като _repr_html_, и ги извиква, показвайки резултата, ако има такъв.

Стъпка 8: Табло за управление на COVID-19 | Част 4

Табло за управление на COVID-19 | Част 4
Табло за управление на COVID-19 | Част 4

Списъкът на пакетите (както е обяснено в стъпка 2) се импортира в програмата.

Стъпка 9: Табло за управление на COVID-19 | Част 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')

Както е обяснено в стъпка 1, четенето на данните като.csv файл от хранилището.

Стъпка 10: Табло за управление на COVID-19 | Част 6

Табло за управление на COVID-19 | Част 6
Табло за управление на COVID-19 | Част 6

Ще преименуваме имената на колоните df в малки букви

Стъпка 11: Табло за управление на COVID-19 | Част 7

Табло за управление на COVID-19 | Част 7
Табло за управление на COVID-19 | Част 7

Ще променим провинцията/щата на щат и държава/регион на държава

Стъпка 12: Табло за управление на COVID-19 | Част 8

Табло за управление на COVID-19 | Част 8
Табло за управление на COVID-19 | Част 8

Ще изчислим общия брой потвърдени, смъртни и възстановени случаи.

Стъпка 13: Табло за управление на COVID-19 | Част 9

Табло за управление на COVID-19 | Част 9
Табло за управление на COVID-19 | Част 9
Табло за управление на COVID-19 | Част 9
Табло за управление на COVID-19 | Част 9

Ще покажем общата статистика в HTML формат, тъй като импортирахме конкретни библиотеки в стъпка 7 по -рано, както е показано по -долу:

от IPython.core.display дисплей за импортиране, HTML

Стъпка 14: Списък на държавите (Топ10) по броя на случаите | Табло за управление на COVID-19

Списък на страните (Топ10) по броя на случаите | Табло за управление на COVID-19
Списък на страните (Топ10) по броя на случаите | Табло за управление на COVID-19
Списък на страните (Топ10) по броя на случаите | Табло за управление на COVID-19
Списък на страните (Топ10) по броя на случаите | Табло за управление на COVID-19

fig = go. FigureWidget (оформление = go. Layout ())

Функцията FigureWidget връща празен обект FigureWidget с оси x и y по подразбиране. Интерактивните джаджи на Jupyter имат атрибут на оформление, излагащ редица CSS свойства, които влияят върху начина на разположение на приспособленията.

pd. DataFrame

създава рамка от данни, използвайки речник, с три цветни фона, за да се попълни резултатът.

def show_latest_cases (TOP)

сортира стойностите по потвърден низходящ ред.

взаимодействат (show_latest_cases, TOP = '10 ')

Функцията за взаимодействие (ipywidgets.interact) автоматично създава контроли за потребителски интерфейс (UI) за интерактивно проучване на код и данни.

ipywLayout = widgets. Layout (border = 'solid 2px green')

създава граница с линии с ширина 2 пиксела в зелен цвят, за да се покаже резултатът.

Стъпка 15: Общи случаи на световна карта | Табло за управление на COVID-19

Общо случаи на световна карта | Табло за управление на COVID-19
Общо случаи на световна карта | Табло за управление на COVID-19
Общо случаи на световна карта | Табло за управление на COVID-19
Общо случаи на световна карта | Табло за управление на COVID-19

world_map = folium. Map (location = [11, 0], tile = "cartodbpositron", zoom_start = 2, max_zoom = 6, min_zoom = 2)

Folium е инструмент, който ви кара да изглеждате като картографиращ Бог, докато цялата работа се извършва в задния край. Това е обвивка на Python за инструмент, наречен leaflet.js. По принцип му даваме минимални инструкции, JS върши много работа във фонов режим и получаваме някои много, много готини карти. Страхотни неща са. За по -голяма яснота, картата технически се нарича „Карта на листовката“. Инструментът, който ви позволява да ги наричате в Python, се нарича „Folium“.

Folium улеснява визуализирането на данни, които са манипулирани в Python на интерактивна карта с листовки. Той дава възможност както за свързване на данни с карта за визуализации на choropleth, така и за предаване на Vincent/Vega визуализации като маркери на картата.

за i в обхват (0, len (потвърден_df))

В цикъл for ще получим всички потвърдени случаи от формулирането на стъпка 9.

фолиум. Кръг

Създаваме карта с балончета, като използваме folium. Circle () за итеративно добавяне на кръгове.

местоположение = [потвърден_df.iloc ['lat'], потвърден_df.iloc ['дълъг'], от confirm_df на потвърдени случаи от стъпка 5, ние извличаме стойностите на географската ширина и дължина, съответстващи на всяко местоположение/държава данни.

радиус = (int ((np.log (потвърден_df.iloc [i, -1] +1.00001)))+0.2)*50000, създаване на радиус обект, за да нанесете кръговете с балончета на картата на света в страните.

color = 'red', fill_color = 'indigo', като очертава кръга на балонния кръг като червен, а вътрешната област като индиго.

и накрая начертаване на кръговете на world_map с помощта на обекта подсказка.

Стъпка 16: Резултатът

Резултатът!
Резултатът!
Резултатът!
Резултатът!

Прикаченият файл показва:

  1. Списък на страните по броя на случаите
  2. Общо случаи на карта на света

Препоръчано: