Оглавление:
- Запасы
- Шаг 1. Понимание внутреннего процесса (база данных)
- Шаг 2. Пакеты / библиотеки Python, используемые в программе
- Шаг 3. Настройка накопителя для использования Colab
- Шаг 4: Обзор программы
- Шаг 5: Панель управления COVID-19 | Часть 1
- Шаг 6: Панель управления COVID-19 | Часть 2
- Шаг 7: Панель управления COVID-19 | Часть 3
- Шаг 8: Панель управления COVID-19 | Часть 4
- Шаг 9: Панель управления COVID-19 | Часть 5
- Шаг 10: Панель управления COVID-19 | Часть 6
- Шаг 11: Панель управления COVID-19 | Часть 7
- Шаг 12: Панель управления COVID-19 | Часть 8
- Шаг 13: Панель управления COVID-19 | Часть 9
- Шаг 14: Список стран (Топ-10) по количеству случаев | Панель управления COVID-19
- Шаг 15: Общее количество случаев на карте мира | Панель управления COVID-19
- Шаг 16: результат
Видео: Панель мониторинга COVID19 на карте мира (с использованием Python): 16 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:48
Я знаю, что почти все из нас знают больше всего о COVID19.
И это руководство о создании пузырьковой карты для отображения данных (случаев) на карте мира в реальном времени.
Для большего удобства я добавил программу в репозиторий Github:
github.com/backshell/COVID19dashboard
Запасы
Никаких расходных материалов как таковых не требуется, и мы будем выполнять всю компьютерную программу через Блокнот GoogleColab. Так что для начала достаточно учетной записи Gmail.
Colab Notebooks / Colaboratory - это исследовательский проект Google, созданный для распространения информации об образовании и исследованиях в области машинного обучения. Это среда ноутбука Jupyter, которая не требует настройки для использования и полностью работает в облаке.
И НИКАКАЯ установка не требуется на вашем компьютере.
Шаг 1. Понимание внутреннего процесса (база данных)
Большинство программ извлекают данные из серверной части, а результат форматируется и публикуется во внешнем интерфейсе. И для этой конкретной программы нам потребуются реальные данные о COVID19.
G. W. C. Инженерная школа Уайтинга публикует статистику 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:
Пакет plotly Python существует для создания, управления и визуализации графических фигур (то есть диаграмм, графиков, карт и диаграмм), представленных структурами данных, также называемыми фигурами.
Морской:
Seaborn - это библиотека визуализации данных Python, основанная на matplotlib. Он предоставляет высокоуровневый интерфейс для рисования привлекательных и информативных статистических графиков.
ipywidgets:
ipywidgets - это интерактивные HTML-виджеты для записных книжек Jupyter, JupyterLab и ядра IPython. Ноутбуки оживают, когда используются интерактивные виджеты.
Установка этих пакетов не требуется, так как мы будем работать с этой программой полностью в Блокноте Google Colab (давайте оставим ее как colab в этом руководстве).
Шаг 3. Настройка накопителя для использования Colab
На Диске создайте папку для записных книжек.
С технической точки зрения, этот шаг не является обязательным, если вы хотите просто начать работать в Colab. Однако, поскольку Colab работает без вашего накопителя, неплохо было бы указать папку, в которой вы хотите работать. Вы можете сделать это, зайдя на свой Google Диск и нажав «Создать», а затем создав новую папку.
Затем вы можете создать здесь colabnotebook или начать работать напрямую в colab и связать папку на диске, созданную для работы colab.
Это хорошая практика, иначе колаб, который мы создаем, может выглядеть беспорядочно на нашем диске.
Шаг 4: Обзор программы
В этой программе / блокноте мы будем создавать следующее для COVID-19:
- Список стран по количеству дел
- Всего случаев на карте мира
Шаг 5: Панель управления 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
Функция взаимодействия (ipywidgets.interact) автоматически создает элементы управления пользовательского интерфейса (UI) для интерактивного изучения кода и данных. Это самый простой способ начать использовать виджеты IPython.
Шаг 7: Панель управления COVID-19 | Часть 3
display_html отображает HTML-представления объекта. То есть он ищет зарегистрированные методы отображения, такие как _repr_html_, и вызывает их, отображая результат, если таковой имеется.
Шаг 8: Панель управления 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')
Verified_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
Мы переименуем имена столбцов df в нижний регистр
Шаг 11: Панель управления COVID-19 | Часть 7
Мы изменим провинцию / штат на штат и страну / регион на страну
Шаг 12: Панель управления COVID-19 | Часть 8
Подсчитаем общее количество подтвержденных случаев, случаев смерти и выздоровления.
Шаг 13: Панель управления COVID-19 | Часть 9
Мы будем отображать общую статистику в формате HTML, поскольку мы импортировали определенные библиотеки на шаге 7 ранее, как показано ниже:
из IPython.core.display import display, HTML
Шаг 14: Список стран (Топ-10) по количеству случаев | Панель управления COVID-19
fig = go. FigureWidget (layout = 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 = 'сплошной 2 пикселя, зеленый')
создает границу с линиями зеленого цвета шириной 2 пикселя для отображения результата.
Шаг 15: Общее количество случаев на карте мира | Панель управления 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, на интерактивной карте Leaflet. Он позволяет как привязать данные к карте для визуализации хороплет, так и передавать визуализации Винсента / Веги в качестве маркеров на карте.
для я в диапазоне (0, len (подтверждено_df))
В цикле for мы получим все подтвержденные случаи из формулировки на этапе 9.
лист. круг
Мы создаем пузырьковую карту, используя folium. Circle () для итеративного добавления кругов.
location = [Verified_df.iloc ['lat'], Verified_df.iloc ['long'], из Verified_df подтвержденных случаев с шага 5 мы извлекаем значения широты и долготы, соответствующие каждому местоположению / стране.
радиус = (int ((np.log (formed_df.iloc [i, -1] +1.00001))) + 0.2) * 50000, создание объекта радиуса для нанесения пузырьковых кругов на карту мира по странам.
цвет = 'красный', fill_color = 'индиго', Сделайте контур пузырькового круга красным, а внутреннюю часть - индиго.
и, наконец, нанесение кругов на карту мира с помощью объекта всплывающей подсказки.
Шаг 16: результат
Вложение показывает:
- Список стран по количеству дел
- Всего случаев на карте мира
Рекомендуемые:
Система визуального мониторинга на основе LoRa для сельского хозяйства Iot - Разработка фронтального приложения с использованием Firebase и Angular: 10 шагов
Система визуального мониторинга на основе LoRa для сельского хозяйства Iot | Разработка фронтального приложения с использованием Firebase и Angular: в предыдущей главе мы говорили о том, как датчики работают с модулем loRa для заполнения базы данных Firebase Realtime, и мы видели очень высокоуровневую диаграмму того, как работает весь наш проект. В этой главе мы поговорим о том, как мы можем
Live Tracker Covid19 с использованием ESP8266 и OLED - Панель управления Covid19 в реальном времени: 4 шага
Live Tracker Covid19 с использованием ESP8266 и OLED | Панель управления Covid19 в реальном времени: посетите веб-сайт Techtronic Harsh: http: //techtronicharsh.com Везде наблюдается огромная вспышка нового вируса короны (COVID19). Возникла необходимость следить за текущим сценарием COVID-19 в мире. Так что, находясь дома, это было п
Orange Pi Plus 2 - Armbian (на SD-карте или встроенной памяти 16 ГБ!) - Обновление: 6 шагов
Orange Pi Plus 2 - Armbian (на SD-карте или встроенной памяти 16 ГБ!) - Обновление: Привет всем! Это моя первая инструкция, а английский не является моим родным языком, поэтому, пожалуйста, не обижайтесь на меня. Для начала, Orange Pi Plus 2 - замечательное маленькое устройство, такое же, как Raspberry Pi, но быстрее! Для Raspberry Pi существует большое сообщество
Держатель магнитной ручки / стилуса DIY на SD-карте для ноутбука: 9 шагов
Магнитный держатель для пера / стилуса на SD-карте для ноутбука: я начал мозговой штурм над этим проектом, когда в этом году купил новый Dell XPS 15 для школы. Я хотел получить стилус в комплекте с моим новым ноутбуком с сенсорным экраном, чтобы делать заметки на экране и размечать powerpoints во время лекции, поэтому я купил
Панель мониторинга состояния Pi: 3 шага
Панель мониторинга состояния Pi: Raspberry Pi используются для управления большим количеством проектов. Пи сначала были приняты учителями и любителями, но теперь производители и предприятия осознали удивительную силу Пи. Несмотря на то, что они маленькие, удобные и недорогие