新型冠状病毒疫情实时数据可视化监测

随着秋冬季节的降临,北半球气温逐渐转凉,北半球多个国家单日新增病例持续创新高,新增病例一直在高位徘徊不下。

中国疾控中心原副主任杨功焕于2020年10月11日在接受《环球时报》记者采访时表示: 综合多方面因素,年初所预测的秋冬季新冠疫情反弹已经开始,第二波疫情的流行已拉开序幕。

当今世界,各国相互联系、相互依存的程度空前加深,世界联系在一起,彼此影响,休戚相关。面对此次疫情,Hightopo 积极将科技渗透生活所需,实现智慧医院、智慧医疗等相关数据可视化项目,为了给大家展示科技感的智慧化生活,将展示 2D 与 3D 结合的三维可视化世界疫情地图。实时展示当前最新的全球疫情数据。

查看更多行业3D可视化组态监控系统案例:https://www.hightopo.com/demos/index.html

采用了 HT for Web 轻量化模型以及 web 组态,在平台界面创建了标题和数据统计按钮部分以及时间轴为主的 2D 面板,科幻地球和两侧的实时播报部分为 3D 场景。

该平台与众不同之处在于科幻地球与其他三维组件分属两个 3D 场景,避免科幻地球与实时播报面板两者之间在操作上互不影响。 不仅可以在 PC 端查看,在移动端浏览时,为了适应其浏览方式的变化(横屏及竖屏),在显示效果上也作出了相对应的变化。比如在竖屏时,会只突出显示中间科幻地球部分:

当手机横屏时,由于有足够的空间,两侧的实时播报部分的3D面板会随着地球而显现:

关于更新科幻地球上的数据,进行了一个特别的处理。不仅会根据各个国家的确诊人数来更新其地图颜色,还会对有光柱的国家进行统计数据的更新。光柱效果如下图。

实现价值

在突发公共卫生事件中,公众需要独立、清晰、有权威、值得信赖的信息。突发公共卫生事件管理策略中非常重要的一点就是传播健康有效的信息,播报疫情数据可视化应用,是以最直观的方式获取疫情发展态势、各地区疫情现状对比以及全球整体疫情趋势等信息,做到深度挖掘数据的潜在价值,为运营决策提供精准有力的数据支持。

针对不同群体,平台可满足多元需求:

1、资讯分析师、舆情分析师等专业人士能够获取第一手的新鲜资料,用于分析和推断,例如通过观察确诊病例曲线斜率变化,可预测疫情拐点;

2、海外华侨能够了解到所在国的疫情情况,做出有效的应对,保障自己和家人健康安全;

3、可用于各国防疫部门、边境地区,助力防疫工作新进展,为相关机构制定政策提供有效指导;

4、高挂于各地繁华区,为国内的普通民众观察到全球疫情变化,做出后续工作、出行等计划安排。

为了更好地保障疫情防控工作有序开展,数据可视化大屏充分运用数据分析和智能应用,医疗救治、辅助筛查、卫生健康、交通管理等不同数据的交叉协同,提高疫情防控,降低成本;在疫情监测分析、防控救治、资源调配、服务民生等方面提升服务水平,保障复工复产工作。

Hightopo 成立以来,就致力于为客户提供实时、高效、智能的数据分析展示解决方案,帮助企业查看分析数据并改进业务,成为最值得信赖的一流企业。

  • 6
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
本文将介绍如何使用Python爬虫对新型冠状病毒相关数据进行整理和可视化分析。主要包括以下步骤: 1. 获取疫情数据 2. 整理数据 3. 可视化数据 ## 1. 获取疫情数据 我们可以从丁香园、百度、腾讯等网站获取新型冠状病毒疫情数据。这里以丁香园为例,使用requests库进行网页爬取,代码如下: ```python import requests url = 'https://ncov.dxy.cn/ncovh5/view/pneumonia' r = requests.get(url) r.encoding = 'utf-8' print(r.text) ``` 这里获取到的是网页的HTML代码,需要使用BeautifulSoup库进行解析。代码如下: ```python from bs4 import BeautifulSoup soup = BeautifulSoup(r.text, 'html.parser') script = soup.find('script', attrs={'id': 'getListByCountryTypeService2true'}) text = script.string print(text) ``` 这里我们找到了HTML中id为`getListByCountryTypeService2true`的script标签,通过`script.string`获取到其中的字符串。这个字符串就是包含疫情数据的JSON格式数据。我们可以使用json库将其转换为Python字典格式。代码如下: ```python import json data_str = text.replace('try{window.getListByCountryTypeService2true = ','')[:-1] data_dict = json.loads(data_str) print(data_dict) ``` 这里先将字符串中的`try{window.getListByCountryTypeService2true = `和最后的分号去掉,然后使用json.loads()将其转换为Python字典格式。这个字典中包含了全国和各省市的疫情数据。 ## 2. 整理数据 我们可以将获取到的字典数据整理成DataFrame格式,方便后续的分析和可视化。代码如下: ```python import pandas as pd df = pd.DataFrame(data_dict['getAreaStat']) df = df[['provinceName', 'confirmed', 'suspected', 'cured', 'dead']] df['confirmed'] = df['confirmed'].astype(int) df['suspected'] = df['suspected'].astype(int) df['cured'] = df['cured'].astype(int) df['dead'] = df['dead'].astype(int) print(df.head()) ``` 这里我们只保留了省份、确诊人数、疑似病例、治愈人数和死亡人数,然后将这些数据转换为整数类型。 ## 3. 可视化数据 接下来我们可以使用matplotlib和seaborn库对数据进行可视化分析。这里我们分别绘制各省份的确诊人数和治愈人数的柱状图。代码如下: ```python import matplotlib.pyplot as plt import seaborn as sns plt.figure(figsize=(16, 8)) sns.barplot(x='provinceName', y='confirmed', data=df) plt.xticks(rotation=90) plt.title('Confirmed Cases in China') plt.show() plt.figure(figsize=(16, 8)) sns.barplot(x='provinceName', y='cured', data=df) plt.xticks(rotation=90) plt.title('Cured Cases in China') plt.show() ``` 这里使用了sns.barplot()函数绘制柱状图,并使用plt.xticks(rotation=90)将x轴标签旋转90度,避免重叠。结果如下图所示。 ![Confirmed Cases in China](https://i.loli.net/2021/07/14/og7VnJS32i5xHwz.png) ![Cured Cases in China](https://i.loli.net/2021/07/14/U8Kx4Hj7GwVIvag.png) 可以看到,湖北省的确诊人数和治愈人数都远高于其他省份,这是因为新型冠状病毒最初在湖北省爆发。此外,各省份的确诊人数和治愈人数都有所上升,但是随着时间的推移,治愈人数逐渐增加,确诊人数逐渐减少,这是一个积极的信号。 至此,我们使用Python爬虫对新型冠状病毒疫情数据进行了整理和可视化分析。通过这些分析,我们可以更好地了解疫情的发展趋势和各省份的疫情状况,这对疫情的防控和治疗具有重要意义。
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值