Power Query从Github上抓取世界疫情的时间序列数据

大家每天都要看一眼的疫情数据,我们在Github上找到了一个数据集csv格式的,我们可以用Power Query取过来作数据可视化。

Power Query从Github上抓取世界疫情的时间序列数据

上图是头条的海外疫情地图,我们今天来做一个随时间变化的全球疫情变化地图,效果是这样的:

Power Query从Github上抓取世界疫情的时间序列数据

首先是数据准备

我们看这个网站的数据:

Power Query从Github上抓取世界疫情的时间序列数据

7小时前更新,时间序列数据,分成三个文件、确诊、死亡、治愈。

打开其中的一个文件,内容包括经纬度数据、国家地区、省/州,日期是横向排列的,是一个矩阵表格,我们还需要降维处理。

Power Query从Github上抓取世界疫情的时间序列数据

数据准备有两种思路:

  • 一种是直接从第一页中抓取三个文件地址,然后再打开三个文件连接,取出内容展开表格整理数据,三个表格数据合成为一个表格;
  • 一种是直接复制单个文件的地址,抓取文件内容,做出三个表格;

两种方法都可以,我们用第二种方法,简单直接。

第二种方法我们需要定义两个函数,

  • 一个函数是内容提取函数
Power Query从Github上抓取世界疫情的时间序列数据

  • 一个是逆透视整理函数
  • Power Query从Github上抓取世界疫情的时间序列数据

    两个函数都很简单,第二个函数引用第一个函数,其实直接写在一个函数中也可以,像这样:

    Power Query从Github上抓取世界疫情的时间序列数据

    然后我们分别把三个文件的url地址引用,得到三个表格,下表是其中确诊数据的表格:

    Power Query从Github上抓取世界疫情的时间序列数据

    加载到数据模型就可以了。

    制作可视化图表

    我们要用到三个视觉对象:

    Mapbox这个是可定制化程度比较高的地图可视化对象,建议使用,使用前要到mapbox申请一个KEY,免费的。

    Power Query从Github上抓取世界疫情的时间序列数据

    Play Axis数据动态演示必备:

    Power Query从Github上抓取世界疫情的时间序列数据

    卡片图:

    Power Query从Github上抓取世界疫情的时间序列数据


    首先我们来作地图:

    Power Query从Github上抓取世界疫情的时间序列数据

    三个字段拖放好,然后设置格式:

    Power Query从Github上抓取世界疫情的时间序列数据

    申请好的key粘贴到Token,Map Style选择Dark暗色系,下面的Label Positon有两个选择,就是地名显示在最上层,还是下一层。

    Power Query从Github上抓取世界疫情的时间序列数据

    Circle是气泡大小颜色设置,Heatmap热度地图是设置热的扩散半径,以及颜色深浅设置。预览一下制作效果。

    Power Query从Github上抓取世界疫情的时间序列数据

    然后作卡片,一个是日期、一个是确诊人数,日期没什么问题直接显示最新日期就可以了,确诊人数要写个度量值显示汇总最新日期的确诊人数。

    Power Query从Github上抓取世界疫情的时间序列数据

    卡片图取消背景、设置颜色、字体大小就可以了:

    Power Query从Github上抓取世界疫情的时间序列数据

    最后开始演示:

    Power Query从Github上抓取世界疫情的时间序列数据

    最下面的是Play Axis,只用日期一个字段,设置也简单,就是播放速度调整、循环与自动播放设置。

    都设置好之后就可以开始录制了,以上就是今天要讲的随时间变化的疫情地图制作过程。


    分享到:


    相關文章: