前几天给大家分享了一些可视化图表的应用场景——《想做出让老板瞬间傻眼的数据可视化,先学会这几个高大上图表!》,很多同学都私信我想让我分享一下这些图表的制作方法,其中呼声最高的无疑就是可视化地图的制作了。
其实如果问什么样的图表最有逼格,大家第一个想到的差不多都是可视化地图,其实在数据可视化中,地图可视化属于高频应用之一,因为数据地图可以最直观的表达出数据之间的空间关系,因此在很多数据分析场景中被广泛应用。
数据地图的分类有很多,大体有填充地图、点地图、热力地图、区域地图、流量地图等,其中填充地图是最常见的数据地图之一,它通过对不同区域填充颜色的深浅表示数值大小,直观显示不同区域的分布情况。
比如美国大选,哪些州是特朗普的铁杆粉丝、哪些州是摇摆州一目了然。
好了不多扯了,下面分别用Excel和FineBI分别实际操作一下,数据使用今年各省的疫情数据。
Excel制作数据地图
第一步:区域命名
导入地图,依次点击区域,在名称框中输入该省份名称
第二步:调整格式
组合区域删除非必要元素→选中区域→Ctrl G→定位条件→对象→确定→格式→组合→组合
第三步:颜色命名
点击D列的颜色,在名称框中填写颜色名称(名称随意,方便识别即可)
第四步:设置公式
输入公式:E10=VLOOKUP(E9,A:B,2,0)E11=VLOOKUP(E10,F2:G7,2,1)
定义名称再依次给E9命名为“省市”,E11命名为“颜色”最终所有定义的名称如下(不含图形区域)
第五步:插入代码
Alt F11→复制粘贴以下代码→保存为(.xlsm)格式
代码语言:sql复制Sub 热力地图()
For i = 2 To 35 '2和35为数据源的起始和结束行
Range("省市").Value = Range("Sheet1!a" & i).Value '将A列的省份填入到M8单元格
ActiveSheet.Shapes(Range("省市").Value).Select '选中当前省份所对应的地图
Selection.ShapeRange.Fill.ForeColor.RGB = Range(Range("颜色").Value).Interior.Color
'将选中的图形填充E11单元格指向的颜色
Next i
End Sub
代码的作用是遍历A2:A35,然后依次把内容填在E9单元格,这时E10单元格的函数会根据E9的值查找对应的人数,E11单元格的函数又会根据E10的值查找对应的颜色名称,最后宏代码再把E11对应的颜色填充到地图的对应省市中,完成变色。
第六步:制作按钮
开发工具→插入→按钮→按住鼠标左键在任意区域画出按钮→选择宏→确定→自定义按钮名称
第七步:优化美观
以上便是用Excel制作热力型数据地图的完整步骤。
FineBI制作数据地图
上面用excel数据地图可能确实略显麻烦,其实我们也可以通过用一些BI工具当中内置的数据地图功能,方便快捷地制作各种可视化地图,这些BI工具往往会将功能进行模块化,所以操作起来非常简单。
举例FineBI,之前提到过,不仅数据分析操作简单,做可视化也很简单,有一套从数据连接、数据处理、数据分析与可视化于的完整流程。
下面就使用FineBI来演示地图可视化的过程。
第一步:抽取数据
其实就是将准备好的Excel上传到FineBI平台上,或者数据在数据库中的话也可以连接。
第二步:创建仪表板,进行地图可视化编辑
数据抽取完成后,再添加一个仪表板用于制作和展示可视化地图,然后再添加一个组件,并选取刚上传的数据集,这样就进入了地图可视化编辑界面。
将省份维度转换成地理角色,并将生成的经度和纬度分别拖入横、纵轴,同时,将人口数指标拖入颜色区域。全程只需要鼠标拖拽,完全不需要进行编程,一个高质量的可视化地图就完成了。
不仅如此,还可以添加组件对省份进行筛选过滤,比如我们需要查看江浙沪三地的情况:
同时,也可以根据人口数量区间进行筛选,比如人口数量在7000万以上的省份分布:
第三步:展示模板
FineBI可以将做好的地图可视化模板挂出,分享web链接进行汇报,省得截图,这样也能实时看到最新的数据情况。
以上是FineBI制作可视化地图的全部过程。