Добро пожаловать, чтобы подписаться на публичный аккаунтанализ данных
1. Введение
В последнее время все сидят дома и ежедневно обращают внимание на данные об эпидемии, поэтому вопрос в том, как использовать python для сбора данных об эпидемиях, чтобы рисовать кривые эпидемии и карты?
2 Сбор данных
Во-первых, давайте выберем источник данных, взяв в качестве примера данные Tencent в реальном времени.Канал передачи данных Tencent об эпидемии в реальном времени
Благодаря анализу мы получаем такую информацию, как URL-адрес, метод запроса, параметры и формат ответа, благодаря которым мы можем получить данные за считанные минуты.
Ежедневно собирайте подтвержденные данные, данные о подозрениях, смерти и лечении. Код выглядит следующим образом:
url = 'https://view.inews.qq.com/g2/getOnsInfo?name=wuwei_ww_cn_day_counts&callback=&_=%d'%int(time.time()*1000)
data = json.loads(requests.get(url=url).json()['data'])
Чтобы зафиксировать совокупные диагностические данные по каждой провинции, код выглядит следующим образом:
num={}
url='https://view.inews.qq.com/g2/getOnsInfo?name=disease_h5&callback=&_=%d'%int(time.time()*1000)
url_data=json.loads(requests.get(url=url).json()['data'])
for item in url_data['areaTree'][0]['children']:
num.update({item['name'] : item['total']['confirm']})
3 Отображение данных
После получения ежедневных подтвержденных данных, данных о подозрениях, смерти и излечении используйте модуль Matplotlib, чтобы напрямую нарисовать кривую эпидемии.
plt.subplot(211)
plt.title('2019-nCoV confirm and suspect', fontsize=20)
plt.plot(date_list, confirm_list, label='confirm')
plt.plot(date_list, suspect_list, label='suspect')
plt.subplot(212)
plt.title('2019-nCoV Curve dead and heal', fontsize=20)
plt.plot(date_list, dead_list, label='dead')
plt.plot(date_list, heal_list, label='heal')
Рисование карты немного сложнее и требует набора инструментов Basemap и модуля Pyproj, который обрабатывает проекцию карты. Пожалуйста, установите необходимые модули самостоятельно.
Для рисования границы между морем и сушей, национальной границы и административной границы требуются данные Shape и библиотека векторных шрифтов simsun.tff, используемая для рисования.
Новая кривая эпидемии коронарной пневмонии 2019 г.
Новая карта эпидемии коронарной пневмонии 2019 г.