最近,我看了一篇文章,叫,后来发现是个卖python课程的,但不免腹诽:Excel是个被严重低估的工具,虽有许多槽点,但Excel是我见过最方便的数据可视化工具。
COVID-19全球形式仍不明朗,今天,我们就来看一下,如何使用Excel的3DMaps功能,3分钟制作COVID-19疫情地图。Excel的3DMaps功能无需编程,即可快速制作各种类型的地图,而且可以根据时间序列生成动画。这里先放效果图:
covid.gif准备软件我们需要MicrosoftOffice,版的需要安装PowerMap插件如果这个功能找不到或用不了,搜索引擎帮你忙数据最最原始的数据是丁香园的我这里使用的是github上BlankerL/DXY-COVID-19-Data的数据此外,我对上述的数据进行了一定程度的清洗和整理和补充数据在文末有提供下载(数据下载于4/14/)数据结构在作图之前,我们需要考虑我们的数据需要怎么样的结构,或者简单点,我们需要哪些数据,而这些数据将以什么形式呈现出来*(无论做什么图,我们都需要思考这个问题)*
以我之前展示的动图为例,我们至少需要以下三类数据
国家/地区的名字疫情数据疫情数据对应的时间名字如果我们需要在地图上标注一个国家的疫情,那么,毋庸置疑,我们需要国家的名字,其实有名字你还远远不够,在真正作图的时候,我们使用的不是名字,而是那个国家的国境线(经纬度坐标),把边境线的这些点一个个画出来,就是国家的轮廓了,而万幸的是,3DMaps这个功能能识别不同语言的地名,如浙江省,Zhejiang,上海等,他会自动找出这个名字对应的国家,省份,甚至城市,并在地图上画出轮廓线
疫情数据为了标注疫情的发展态势,我们当然需要疫情数据,可以是确诊数,死亡数,病死率等等。那么,我们需要以怎么样的形式将这个数据呈现在地图上,而在3DMaps中具体操作又是什么?这部分会在具体操作环节详细说明。
时间如果你只想做静态的图片,时间可以不需要。但如果你需要制作疫情的动态变化地图,我们必须有不同时间,不同地点的疫情数据。动画的原理就是把一张张照片按顺序一张一张播放,我们的大脑由于视觉残留的原理,就会觉得他是连续的。所以我们需要一个时间切片下每个地区的疫情数据,并利用时间这个标签,把他们排列起来。
以下就是一个数据的demo
NameconfirmedCounttime中国/27/新加坡41/27/日本31/27/中国/28/新加坡51/28/日本71/28/3DMaps作图下面就是真实数据的截图,共多条数据,每条数据包含了一个国家或地区的疫情,数据截止于4月14日,值得注意的是数据的最后一列是我添加的,叫confirmedCount_log,因为有些国家疫情严重,累计确诊数很高,而大多数国家的确诊数远远低于该值,没有可比性,所以我对confirmedCount这一列作为log2处理,生成新的一列confirmedCount_log,这样数据的差距被缩小,有利于我们可视化。
载入数据我们首先选中所有数据,最好是用shift组合键选中有数据的区域,然后单击菜单栏中的Insert-3DMaps
这时,就会弹出3DMaps的窗口,我们需要