【Excel商务图表】制作一个地图图表(各版本通用)
在前面,我们介绍过在Excel中如何制作地图图表(在Excel中使用地图进行数据可视化展示)。在Excel 365或者比较新的Excel版本中,也有相应的地图图表。但是这两种做法(本质是一样的)都有一些限制:
这两种做法都是用Bing地图控件,这就要求数据与Bing的共享。对于某些安全性要求较高的企业数据来说,这样做是不被允许的。
这样做出的地图图表不灵活,不能进行灵活的交互。
在很多以前的版本中(比如,2013以前的版本以及很多2016的版本)不能使用。
今天我们介绍的技巧可以让你制作一个在各个版本中通用的地图图表。
01
数据和图表效果
考虑下面的数据:
我们可以制作一个地图图表,在各大区的地图上显示收入:
下面我们介绍制作方法
02
简单分析和准备工作
我们这个图表是通过气泡图制作的(如果不需要通过圆圈的大小展示数据,可以使用散点图)。
为了制作地图的效果,我们需要在图表的绘图区添加一个合适的地图作为背景。
为了让不同区域能够显示在地图的同一个位置,我们需要一组数据,指定每个大区在地图上的坐标。
首先,我们先找到一张地图。(本文下面就介绍的方法是在网络上搜索相应图片,你也可以在地图网站上截取合适的地图作为背景)
在“插入”选项卡中,点击“图片”,点击“联机图片”:
然后搜索“世界地图”:
返回的第一个就是我们需要的地图图片:
点击插入,即可插入图片。
03
获得坐标值
接下来,我们需要取得各个大区在这张地图上的坐标位置。
很多人可能会觉得可以使用经纬度坐标,实际上将经纬度对应在图片上还是不太容易的。这里介绍一个很容易的方法(就是稍微需要一点手工操作)。
我们先在数据中添加两列记录坐标位置:
然后启动Windows的画图软件:
在Excel中,选择刚插入的地图图片,按Ctrl+C复制,然后在画图软件中粘贴:
在主页选项卡中,点击裁剪:
在画布上得到裁剪后的图片:
在Excel中记录这个图片的尺寸:
在画图中移动鼠标到亚洲区中心位置,左下角可以得到像素坐标:
将这个坐标记录下来:
由于这个像素坐标是以左上角为原点的像素值,而在图表中,我们是以左下角为原点,所以需要进行转换。添加两个辅助列,并使用公式转换:
04
选中F,G和C列(按住Ctrl键用鼠标选取),然后在插入选项卡中点击插入气泡图:
在图表上点击鼠标右键,选择数据:
在对话框中点击“编辑”:
修改X,Y和气泡大小数据区域:
点击确定,返回图表。
设置坐标轴格式,横轴设置为最小值=0,最大值为816(图片像素宽度):
纵轴最小值=0,最大值=540:
05
插入地图
选中绘图区:
将绘图区填充设为地图图片(可以重新插入,也可以复制图片后,点击剪切板)。
得到图表:
修改图表格式:(去掉坐标轴,图表标题,网格线):
添加数据标签,并设置格式:
大功告成!
这是一种很常用的地图技巧。主要是可以用于各种版本的Excel,而且没有泄露秘密数据的风险。
这个方法在读取坐标时看上去比较麻烦,但是考虑到实际的场景中,我们需要使用的地图一般只有有限的一个范围(多数只有一个范围),所以只需要几张不同的图片就够了。因此,一次性的记录图片上的像素坐标就可以了。