数据可视化 – 用Excel实现动态地图选取

浏览: 3788

数据地图是数据可视化应用中重要的组成部分,人类的任何生产生活都离不开时间及空间这两个最为重要的维度,而数据地图正是直观展现空间维度数据信息的有效手段。

虽然网上已经有很多应用Excel制作数据地图的成熟方法供我们参考,但这些方法大多是应用在同等级地图维度上的,本文介绍的动态地图选取方法可以帮助我们在Excel平台上实现不同等级维度下的地图钻取,令Excel在数据地图展现功能上更为接近专业的商业智能系统。掌握此方法后便可以轻松在Excel平台上制作出类似下图的地域维度商业智能分析仪了。

零售电商地域钻取.gif


要掌握动态地图选取技巧,先要掌握制作“哆啦A梦单元格”的方法。在我以前的文章“三分钟制作“哆啦A梦单元格”--Excel神技巧(⊙o⊙)”中已经详细介绍过“哆啦A梦单元格”的制作方法,请大家先花几分钟时间了解这部分内容。

https://ask.hellobi.com/blog/ExcelBI/6293


接下来就利用“哆啦A梦单元格”方法实现在中国地图全图中选取不同省份地图的动态地图选取功能。

动态地图选取.gif

制作文件以上传百度云,下载地址如下:

链接: http://pan.baidu.com/s/1gfP0iUf  密码:ds3p


要制作数据地图,首先先要有矢量地图图,在为大家提供的“动态地图选取.xlsm”文件的“展示”工作表中使用的就是由中国各个不同省级矢量图构成的中国地图。有了这样的地图后,接下来:

1.      要为每个省份地图命名

2.      然后再将每个省份地图分别复制到“省份”工作表的不同单元格区域中

3.      在“省份”工作表的A列中输入每块省份地图的名称(文件中用各省份对应汉子名命名)

4.      在“省份”工作表的B列中输入每块省份地图中文名对应的拼音缩写

5.      将每块省份图后边的单元格区域指定命名为该省份地图中文名对应的拼音缩写

※  A列中的中文名对应每个省份地图,B列的拼音缩写对应每个省份地图后的单元格区域

6.      复制任意一块省份地图后边对应的单元格区域,并以链接的图片形式复制到“展示”工作表中

7.      通过名称管理器定义名称“省份”,该名称的公式为“=INDIRECT(展示!$B$1)”

8.      为“展示”工作表A1单元格填充地图底色

9.      为“展示”工作表B1单元格填充选择不同省份地图时选择的省份地图需要显示的颜色

10.  组合键ALT+F11展开VBA编辑器,并在“ThisWorkbook”中输入以下代码

※  使用宏、VBA程序需要将“宏设置”中的安全等级改为“仅用所有宏,并且不通知”以外的选项

VBA代码.png

11.      在A1单元格中输入任意一个省份地图名称中文名(例:黑龙江)

12.      在“展示”工作表的B1单元格中输入公式“=VLOOKUP($A$1,省份!A:B,2,FALSE)”

※  B1单元格是动态图表的“哆啦A梦单元格”

13.      将复制过来的链接的图片指定为“省份”

14.      为“展示”工作表中中国地图里的每个省份地图指定宏“SelectMap()”

15.      保存文件,文件后缀为“.xlsm”

通过以上步骤,就在Excel中完美实现了动态地图选取。

如果仅凭文字描述还是感觉有点迷糊的话,就参照以下视频演示一起来实际操作一下吧。

视频链接: http://t.cn/RiplOC9


报名用数据说话-Excel BI商业智能分析零基础精讲课程系统学习Excel商业智能分析相关知识

推荐 4
本文由 李奇 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

4 个评论

学习,李老师好久没更新了
哈哈,以后一定多多更新
老师,请问做完地图之后如何实现点击地图进入相应的图表?就是以上展示的第一张动态图那样
这个可以有两种方法,第一种是关联VBA程序,第二种是设置超链接跳转到别的地图内容业

要回复文章请先登录注册