有了上面的数据,直接读进来。

allData = pd.read_pickle(os.path.join(data_dir, "allData疫情数据"))

然后,提取日期,congfirm,

组成dataframe

def make_data(allData):col = allData.keys()dct_coutry = {}for c in col:one_country = allData[c]list = one_country['list']confirm_list = []date_list = []for l in list:cfm = l['total']['confirm']confirm_list.append(cfm)dt = l['date']date_list.append(dt)ser_one = pd.Series( confirm_list,index=date_list)dct_coutry[c] = ser_onereturn dct_coutrycov19 = make_data(allData)

因为是每一天的,所以只用每周1的数据作图。

def contstruct_cov(cov19):df = pd.DataFrame(cov19)df.columns = ['china', 'usa', 'uk', 'iran', 'spain', 'korea', 'germey', 'italy', 'india']print(df.shape)df = df.dropna(axis=0)print("after drop NA : ", df.shape)df.index = pd.to_datetime(df.index)print("after make index : ", df.index)df['dayofweek'] = df.index.dayofweekdf_Monday = df[df['dayofweek'] == 1]print("Monday data shape: ", df_Monday.shape)df_Monday = df_Monday[['china', 'usa', 'uk', 'germey', 'italy',  'india']]print(df_Monday.shape)return df_Monday
df_Monday = contstruct_cov(cov19)
df_Monday

然后,把数据变成长数据形式

def my_reshapeData(df_Monday):df = df_Monday.stack()df = df.reset_index()df.columns = ['date', 'name', 'value' ]return dfdf_final = my_reshapeData(df_Monday)df_final
colors = dict(zip([ 'china', 'usa', 'uk', 'germey', 'italy', 'india'],["#adb0ff", "#ffb3ff", "#90d595", "#e48381", "#aafbff", "#f7bb5f"] ))

接下来就作图了


number = list(range(82))*6
number.sort()
number
df['number'] = numberdf.head()def draw_barchart(number):dff = df[df['number'] == number].sort_values(by='value', ascending = True)ax.clear()ax.barh(dff['name'], dff['value'], color = [ colors[x] for x in dff['name']])fig, ax = plt.subplots(figsize = (15, 8))
animator = animation.FuncAnimation(fig, draw_barchart, frames = range(0, 17))
HTML(animator.to_jshtml())
HTML(animator.save(os.path.join(data_dir, "race_bar.gif")))

只做了个简单的,如果设置具体的再参考其他网站

爬虫+数据分析,制作一个世界疫情人数增长动态柱状竞赛图2相关推荐

  1. 爬虫+数据分析,制作一个世界疫情人数增长动态柱状竞赛图

    世界疫情的数据很多网站都有,这里我还是使用手机网易的疫情数据接口. 首先,切换ua,换成手机模式.百度搜索"网易 疫情", 第一个就是. 打开这个网址,点开开发者工具,刷新一下.就 ...

  2. python自动生成鸡汤文_python爬虫+pyinstaller制作一个属于自己的心灵鸡汤

    效果图如下: 实现方法 用Python爬虫对现有的api进行请求,获取彩虹屁,然后用tkinter模块形成一个可视化的gui,最后用pyinstaller对该py文件打包,这就是最后的彩虹屁生成器. ...

  3. RE:利用爬虫技术制作一个看动漫新番的APP

    作者:hwj3747 转载请注明 简介 在看动漫追番的时候,发现每一季度的新番都是被优酷,爱奇艺,哔哩哔哩,PPTV等各大视频厂商买了版权,导致我在手机上要装各种软件,并且很多番更是直接被广电禁掉了, ...

  4. 带你制作一个拥有图形用户界面的彩色动态二维码生成器

    文章目录 开头说两局 制作步骤 完整代码 你好,我是goldsun. 你有想法和我一起进步吗? 开头说两局 不知不觉,自己来到CSDN竟然已经写了20来篇文章了,甚至其中还有超过上万字的,从小语文就异 ...

  5. 如何在ppt中生成柱状图_PPT中怎么制作动态柱状图表?绘制方法全在这里!

    在我们平日的工作当中,我们经常会在每个季度,或者是每年做一些工作总结的汇报.而在进行工作内容汇报时,我们经常会用到PPT,将我们的工作内容或成果用PPT的形式展现出来,以方便领导进行查看以及自己的讲解 ...

  6. python做疫情数据分析的框架_Python制作新冠疫情世界地图

    目录 pyecharts模块 简介 Echarts 是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可.而 Python 是一门富有表达力的语言,很适合用于数据处 ...

  7. Python爬虫,数据可视化之matplotlib初步--制作一个高楼高度的条形统计图全思路

    实现步骤: 1. 通过爬虫,爬取高楼的信息 2. 筛选我们的需要的信息 3. 制作一个表格 4. 解析表格,制作统计图 1 -- 爬虫 首先观察目标网页 发现所有有用的信息都在<p>标签中 ...

  8. 我的世界html导入整合包教程,《我的世界手机版》如何制作一个整合包教程攻略...

    今天当乐网小编要给大家分享的是一个我的世界手机版整合包的制作教程: 我的世界手机版中,很多玩家可能还不会使用单独的材质包以及存档等等,这个时候就会有比较有爱的玩家制作出整合包分享出来,整合包直接安装 ...

  9. 基于微信小程序+爬虫制作一个表情包小程序

    跟朋友聊天斗图失败气急败坏的我选择直接制作一个爬虫表情包小程序,从源头解决问题,从此再也不用担心在斗图中落入下风 精彩专栏持续更新↓↓↓ 微信小程序实战开发专栏 一.API 1.1 项目创建 1.2 ...

最新文章

  1. 将string转换成UTF8在进行请求
  2. Wireshark软件的安装,进行数据包的捕获【Wireshark安装使用】
  3. PMCAFF老友会,产品圈年度最具份量的聚会
  4. volatile超详细讲解
  5. eclipse常用功能:代码重构(变量批量重命名)、自定义注释、代码模板、打开断言
  6. SpringMVC中注解的使用
  7. 从零开始配置MySQL MMM
  8. html右缩进怎么设置,WPS中怎么设置右缩进两个字符?
  9. bzoj 1675: [Usaco2005 Feb]Rigging the Bovine Election 竞选划区(暴力)
  10. 四川大专计算机专业排行,四川排名前三中等职业技术学院专业排行
  11. C#:实现模糊PID控制算法(附完整源码)
  12. 谷歌浏览器翻译栏_将Google翻译栏添加到您喜欢的浏览器
  13. 【FinE】债券久期和凸性
  14. FDTD Solutions初学笔记
  15. 卡内基梅隆 计算机音乐,卡内基梅隆大学音乐技术专业申请要求
  16. Spine的默认材质Spine/Skeleton有毛边问题
  17. 查看笔记本电脑型号等数据
  18. Ubuntu安装桌面
  19. Ubuntu和windows双系统并存条件下,在Windows系统内插耳机没有声音的问题
  20. Excel 2010 SQL应用016 降序排列

热门文章

  1. java 多线程共享数据_Java多线程学习:多个线程间共享数据
  2. python 数据库表结构转为类_Python数据科学实践 | 数据库1
  3. 个人书法记录-2019.4.22
  4. android中关于手机屏幕的相关操作(获取屏幕的宽高等操作)
  5. 【PC工具】一个好用的评分很高的文件管理器Files
  6. Leetcode PHP题解--D16 922. Sort Array By Parity II
  7. Kotlin 标准库中run、let、also、apply、with函数的用法和区别
  8. 使用localStorage实现历史记录搜索功能也就是天猫app历史记录存储方便浏览
  9. 购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(2)--前端,以及前后端Session
  10. WebRTC VideoEngine超详细教程(三)——集成X264编码和ffmpeg解码