Python疫情数据分析+数据可视化展示
采集流程
一. 明确需求
采集/确诊人数/新增人数
二. 代码流程 四大步骤
- 发送请求
- 获取数据 网页源代码
- 解析数据 筛选一些我想用的数据
- 保存数据 保存成表格
- 做数据可视化分析
开始代码
1. 发送请求
import requests # 额外安装: 第三方模块url = 'https://voice.baidu.com/act/newpneumonia/newpneumonia/?from=osari_aladin_banner'
response = requests.get(url)
2. 获取数据 网页源代码
html_data = response.text
# print(response.text)
3. 解析数据
最烦的事情来了,就是提取里面的数据
str_data = re.findall('<script type="application\/json" id="captain-config">\{(.*)\}',html_data)[0]
print(re.findall( '"component":\[(.*)\],',str_data)[0])
用工具去解析一下,在caseList里面就是我们想要的数据了
json_str = re.findall('"component":\[(.*)\],', html_data)[0] # 字符串
# 字典类型取值, 转类型
json_dict = eval(json_str)
caseList = json_dict['caseList']
for case in caseList:area = case['area'] # 城市curConfirm = case['curConfirm'] # 当前确诊curConfirmRelative = case['curConfirmRelative'] # 新增人数confirmed = case['confirmed'] # 累计确诊crued = case['crued'] # 治愈人数died = case['died'] # 死亡人数
4. 保存数据
with open('data.csv', mode='a', newline='') as f:csv_writer = csv.writer(f)csv_writer.writerow([area, curConfirm, curConfirmRelative, confirmed, crued, died])
运行代码,得到数据
疫情数据可视化
完整源码+数据集
各地区确诊人数
china_map = (Map().add("现有确诊", [list(i) for i in zip(df['area'].values.tolist(),df['curConfirm'].values.tolist())], "china").set_global_opts(title_opts=opts.TitleOpts(title="各地区确诊人数"),visualmap_opts=opts.VisualMapOpts(max_=200, is_piecewise=True),)
)
china_map.render_notebook()
新型冠状病毒全国疫情地图
cofirm, currentCofirm, cured, dead = [], [], [], []tab = Tab()_map = (Map(init_opts=opts.InitOpts(theme='dark', width='1000px')).add("累计确诊人数", [list(i) for i in zip(df['area'].values.tolist(),df['confirmed'].values.tolist())], "china", is_map_symbol_show=False, is_roam=False).set_series_opts(label_opts=opts.LabelOpts(is_show=True)).set_global_opts(title_opts=opts.TitleOpts(title="新型冠状病毒全国疫情地图",),legend_opts=opts.LegendOpts(is_show=False),visualmap_opts=opts.VisualMapOpts(is_show=True, max_=1000,is_piecewise=False,range_color=['#FFFFE0', '#FFA07A', '#CD5C5C', '#8B0000']))
)
tab.add(_map, '累计确诊')_map = (Map(init_opts=opts.InitOpts(theme='dark', width='1000px')).add("当前确诊人数", [list(i) for i in zip(df['area'].values.tolist(),df['curConfirm'].values.tolist())], "china", is_map_symbol_show=False, is_roam=False).set_series_opts(label_opts=opts.LabelOpts(is_show=True)).set_global_opts(title_opts=opts.TitleOpts(title="新型冠状病毒全国疫情地图",),legend_opts=opts.LegendOpts(is_show=False),visualmap_opts=opts.VisualMapOpts(is_show=True, max_=100,is_piecewise=False,range_color=['#FFFFE0', '#FFA07A', '#CD5C5C', '#8B0000']))
)
tab.add(_map, '当前确诊')_map = (Map(init_opts=opts.InitOpts(theme='dark', width='1000px')).add("治愈人数", [list(i) for i in zip(df['area'].values.tolist(),df['crued'].values.tolist())], "china", is_map_symbol_show=False, is_roam=False).set_series_opts(label_opts=opts.LabelOpts(is_show=True)).set_global_opts(title_opts=opts.TitleOpts(title="新型冠状病毒全国疫情地图",),legend_opts=opts.LegendOpts(is_show=False),visualmap_opts=opts.VisualMapOpts(is_show=True, max_=1000,is_piecewise=False,range_color=['#FFFFE0', 'green']))
)
tab.add(_map, '治愈')_map = (Map(init_opts=opts.InitOpts(theme='dark', width='1000px')).add("死亡人数", [list(i) for i in zip(df['area'].values.tolist(),df['died'].values.tolist())], "china", is_map_symbol_show=False, is_roam=False).set_series_opts(label_opts=opts.LabelOpts(is_show=True)).set_global_opts(title_opts=opts.TitleOpts(title="新型冠状病毒全国疫情地图",),legend_opts=opts.LegendOpts(is_show=False),visualmap_opts=opts.VisualMapOpts(is_show=True, max_=50,is_piecewise=False,range_color=['#FFFFE0', '#FFA07A', '#CD5C5C', '#8B0000']))
)
tab.add(_map, '死亡')tab.render_notebook()
各地区确诊人数与死亡人数情况
bar = (Bar().add_xaxis(list(df['area'].values)[:6]).add_yaxis("死亡", df['died'].values.tolist()[:6]).add_yaxis("治愈", df['crued'].values.tolist()[:6]).set_global_opts(title_opts=opts.TitleOpts(title="各地区确诊人数与死亡人数情况"),datazoom_opts=[opts.DataZoomOpts()],)
)
bar.render_notebook()
Python疫情数据分析+数据可视化展示相关推荐
- Python爬虫+数据分析+数据可视化(分析《雪中悍刀行》弹幕)
Python爬虫+数据分析+数据可视化(分析<雪中悍刀行>弹幕) 哔哔一下 爬虫部分 代码部分 效果展示 数据可视化 代码展示 效果展示 视频讲解 福利环节 哔哔一下 雪中悍刀行兄弟们都看 ...
- python 爬虫及数据可视化展示
python 爬虫及数据可视化展示 学了有关python爬虫及数据可视化的知识,想着做一些总结,加强自己的学习成果,也能给各位小伙伴一些小小的启发. 1.做任何事情都要明确自己的目的,想要做什么,打算 ...
- python疫情大数据可视化
一.实验目的 通过本次实验掌握数据获取.数据清洗与存储和数据可视化工具的基本使用方法. 二. 实验平台 操作系统:window10 python版本:3.8 IDE:pycharm 可视化工具:ech ...
- python数据挖掘课程设计——基于数据挖掘的森林火灾预测分析(数据代码+数据分析+数据可视化展示)
基于数据挖掘的森林火灾预测分析 [摘要]随着全球范围性的温室效应,全球气温正逐步升高,为对抗温室效应,森林已经成为我们急需保护的资源,但是火灾时刻威胁着森林资源.为了帮助对抗温室效应.保护森林,本研究 ...
- 大厂疯传!Python+商业数据分析+数据可视化教程(附项目案例)
这是一个数据驱动一切的时代,从国家.企业.组织到个人,都在关注各种数据,并寄希望于从数据中获取到价值,因此数据分析就是这个时代的"淘金"! 也正是因为这样,数据分析人才成为了当下的 ...
- Python中的数据可视化工具与方法——常用的数据分析包numpy、pandas、statistics的理解实现和可视化工具matplotlib的使用
Python中的数据可视化工具与方法 本文主要总结了: 1.本人在初学python时对常用的数据分析包numpy.pandas.statistics的学习理解以及简单的实例实现 2.可视化工具matp ...
- 使用python采集某二手房源数据并做数据可视化展示(含完整源代码)
本次目的: python采集链家二手房源数据并做数据可视化展示 亮点: 系统分析网页性质 结构化的数据解析 csv数据保存 环境介绍: python 3.8 解释器 pycharm 专业版2021.2 ...
- Python数据分析-数据可视化(二)
欢迎大家访问个人博客:https://jmxgodlz.xyz 文章目录 前言 Matplotlib 折线图格式调整 标签 线条颜色 线条形状 折点样式 线条透明度 前言 看到有些论文插图十分简洁美观 ...
- 数据可视化课程设计——北京新发地官网数据分析与可视化展示【内容在jupyter notebook里面展示】包含数据爬取与可视化分析详解
目录 一.课题说明 1.1.设计原因: 1.2.设计目标: 1.3.开发环境: 1.4.爬取网站链接 二.准备工作 2.1.数据获取: 2.2.爬取的数据说明: 2.3.爬虫程序设计的思路: 三.详细 ...
最新文章
- HDU-1042 N! 大数乘法 (C语言)
- (转)PHP框架大比武
- JAVA SE学习day16:reflect
- 给你们讲讲我自己是怎么学习Linux系统的
- C/C++课程设计 ——货物管理系统
- python建模仿真 matlab_清华大学出版社-图书详情-《仿真建模与MATLAB实用教程》
- Python 中的json字符串以及使用
- SVN服务器搭建详解
- -------------计算机里面算法-----------
- 四个跑马灯的c语言程序,入门编程语言跑马灯,C语言设计跑马灯程序
- linux文件夹建立软连接,软连接 - Linux软连接创建及一个“坑”
- Fancy3D特效缺少
- 冬天吃柿子养颜防衰老
- SpringBoot+jdk1.8邮件发送
- 安卓Launcher 简介
- 在python中解压rar文件
- 如何向centos服务器传文件,【实用】如何快速实现Windows和CentOS文件互传
- 数据透视表知识点+案例
- dotnet 读 WPF 源代码笔记 WriteableBitmap 的渲染和更新是如何实现
- 美剧中50句经典俚语完美解析