第6章 构建综合性数据地图分析模型

在前面各章节内容的基础上,我们已经可以制作包含数据地图、动态图表等多种分析手段的综合性分析模型。本章介绍如何综合运用这些技术手段,仿制国外商业网站上常见的两种综合性数据地图分析模型。

6.1 仿《华尔街日报》数据地图分析模型

首先介绍的是美国《华尔街日报》网站常用的一种数据地图分析模型,它同时具有热力地图+动态地图+地图选择+动态图表+自动播放的特征,可以用来反映一个地域×时间的二维数据表格。

本综合分析模型的典型案例可以参见《华尔街日报》关于美国失业率的分析专题,如图6-1所示。读者可以先在以下地址体验:

alt

图6-1 《华尔街日报》数据地图分析模型 例图来源:《华尔街日报》网站

http://online.wsj.com/public/resources/documents/JOBSMAP09.html![alt](/uploads/projects/s10435804/images//00095.jpeg)

此分析模型的主要特征有:

●左侧是一个热力地图,以颜色深浅反映指标数据的地域分布特征;

●该热力地图可以动态切换月份,以便观察不同时期的数据分布特征;

●该热力地图同时又是一个选择器,用户点击选择某个区域,右侧的图表将切换为该区域的时间序列数据;

●时间维度可以自动播放,以便读者专注观察数据变化。

作图思路

本模型可以在5.2节切换时间维度的动态地图、5.4节基于地图选择的动态图表的基础上综合而来,相对来说要复杂一点,所以请读者先阅读掌握相关章节的内容。

作图步骤

1.构思数据地图模型。alt

我们使用3个工作表来建模,分别为“iMap”、“数据”和“图例”工作表。“iMap”工作表为提供给用户的操作和分析界面,“数据”工作表存放要分析的源数据,以及根据用户选择为地图和动态图表准备的数据源。“图例”工作表为热力地图的分档阈值及填色样式设置,同时会被引用作为图例,如图6-2所示。

alt

图6-2 综合数据地图分析模型 范例文件名:6.1仿《华尔街日报》数据地图分析模型.xls(或.xlsm)

如图6-3所示,“数据”工作表中,需要分析的数据源放在区域G4:S36,为各省2001~2012年的指标数据。

alt

图6-3 数据准备区

C4和D4存放用户选择的省名和年份,分别由“iMap”工作表中的地图选择器和年份滚动条控制。建模之初可以先手动填入数据,如“湖北”、“2011”,便于调试。

D列根据所选年份查找出该年的各省数据,E列根据各省数据从分档阈值表查找出相应的颜色号,此颜色号对应的颜色将被用于填充地图图形。

G49:S49为根据所选地域查找出的该地域2001~2012年的时间序列数据,将用来绘制动态图表。

如图6-4所示,“图例”工作表中设置分档阈值、图例等。为使各时期地图均使用相同的图例,阈值要针对所有区域、所有年份的数据最大值和最小值来统一设置。

alt

图6-4 分档阈值与图例设置

2.制作年份选择器,将用户选择的结果存放到“数据”工作表的D4单元格。

各省地图图形放置在iMap 工作表的B6:H23处,注意图形命名应与数据表格中的省名一致。

在地图下方绘制一个滚动条窗体控件,供用户选择年份,起始值为2001,终止值为2012,步长为1,用户选择的结果链接存放到“数据”工作表的D4单元格。

3.制作地图选择器,将用户选择的结果存放到“数据”工作表的C4单元格。

这里需要编写地图选择器的公用宏代码,以及批量设置各省图形的宏调用,请参阅5.4节的相关内容。

有一点不同的是,由于地图选择器建立在热力地图的基础之上,为不改变地图的填充色,我们对“当前选中的地图图形”用红色边框线来表示。其宏代码如图6-5所示。

alt

图6-5 地图选择器的宏代码

4.绘制热力地图。

这里需要编写热力地图的填色宏代码,使用“数据”工作表E列的颜色号来填充地图图形。请参阅5.2节的相关内容。

将这个宏指定给地图下方的滚动条,这样当用户通过滚动条选择年份时,就会触发宏而重新绘制热力地图。

5.制作动态图表。

使用“数据”工作表单元格G49处的数据,制作分析图表,格式化好后复制到“iMap”工作表地图的右侧,此图表将与地图选择器联动。

6.测试模型并确认正确性。

现在,通过滚动条改变月份,左侧的热力地图应刷新。点击地图改变省份,右侧的图表应切换。检查并确认数据是否正确。

7.制作播放按钮。

为进一步完善模型,制作两个播放按钮,分别让存放用户选择省名和年份的C4和D4逐步变化,产生自动播放的效果,便于用户观察和分析数据变化情况。有兴趣的读者可自行研究范例文件中的设置,这里就不细述了。

本综合分析模型适合于形象化地呈现和分析一个具有时间和地域维度的、多行多列的二维数据表,把枯燥的表格变为生动的地图和图表,也可以进一步发展为一个综合的动态仪表盘。这种时间×地域的二维数据表格是最常见的分析数据源,因此本模型的用途也非常广泛。

懒人直接用

在随书范例包中找到并打开“6.1仿《华尔街日报》数据地图分析模型.xls(或.xlsm)”文件,启用宏。

●在“数据”工作表的G4:S36填入分析数据。

●在“图例”工作表中设置统一的分档阈值和填充颜色。

●在“iMap”工作表中交互操作和分析数据。

6.2 仿《经济学人》数据地图分析模型

在6.1节的做法中,模型所分析的是同一个指标,动态地图切换的是时间维度,动态图表切换的是地域维度。延续6.1节的做法,本节介绍《经济学人》网站经常使用的一种数据地图分析模型,其动态地图和动态图表均切换不同的指标数据。

本综合分析模型的典型案例可以参见《经济学人》关于中国的一个专题分析,如图6-6所示。读者可以先在以下地址体验:

alt

图6-6 《经济学人》数据地图分析模型 例图来源:《经济学人》网站

http://www.economist.com/content/chinese_equivalents![alt](/uploads/projects/s10435804/images//00095.jpeg)

此分析模型的主要特征有:

●左侧是一个热力地图,以颜色深浅反映指标数据的地域分布特征。

●地图上方的页标签可以动态切换热力地图的指标数据,以观察不同指标数据的分布特征。

●右侧的条形图是对数据地图另一种形式的补充,当地图切换指标时条形图也将跟随切换为同样的指标。

●左侧热力地图同时又是一个选择器,用户点击选择某个区域时,右侧的图表将突出显示当前选中的区域。

作图思路

本模型可以在5.3节切换指标的动态数据地图、5.4节基于地图选择的动态图表的基础上综合制作而来,相对来说要复杂一点,所以请读者先阅读掌握相应章节的内容。

作图步骤

1.构思数据地图模型。alt

使用两个工作表来构建本模型:map工作表为分析界面,data工作表存放数据源,以及根据用户选择为地图和图表准备的作图数据,如图6-7所示。

alt

图6-7 综合数据地图分析模型 范例文件名:6.2仿《经济学人》数据地图分析模型.xls(或.xlsm)

2.制作指标选择按钮,选择结果存放到单元格B10。

使用窗体控件绘制一组单选按钮,供用户选择分析指标,设置选择结果链接到单元格B10。也可以使用列表框等其他控件类型。

3.制作地图选择器,选择结果存放到单元格C10。

先将各省地图图形放置在B10:I32处,注意,图形的命名应与data工作表中的省名一致。

按5.4节的做法,制作地图选择器。这里需要编写地图选择器的公用宏代码,以及用宏批量设置各省图形的宏调用。

有一点不同的是,为不改变热力地图的填充色,我们对“当前选中的地图图形”用红色边框线来表示。其宏代码如图6-8所示。

alt

图6-8 地图选择器的宏代码

4.准备动态地图的数据。

在data工作表中,根据map工作表B10和C10单元格记录的用户选择结果,从数据源区域查找返回相应的指标数据,作为地图和图表的数据源,如图6-9所示。

alt

图6-9 数据准备

C3和B3引用map工作表的B10和C10,即用户选择的指标序号和省名。

C5:=INDEX(J5:S5,$C$3),返回与指标序号对应的指标值。

D5:=($G$5-C5)/($G$5-$G$6)*90%,根据与最大及最小值的匹配关系返回透明度百分比。

5.编写绘制地图的宏。

当用户选择了新的指标数据,模型就调用宏代码,根据所选指标数据重新填充地图颜色。

这里需要编写透明度热力地图的填色宏代码,使用data工作表中D列的透明度数据来填充各省地图图形,如图6-10所示,可参阅5.3节的内容。

alt

图6-10 根据透明度绘制地图的宏

为了让用户明确感受到切换指标后地图被重新绘制,在宏代码中根据不同的选择,对B10填充不同的颜色,并使用此填充色作为绘制地图的基准色。这样,用户选择不同的指标数据时,地图将呈现不同的基准色。

将这段宏指定给地图上方的指标选择按钮,这样当用户通过按钮选择指标时,就会调用宏去重新绘制地图。

6.制作动态图表。

在data工作表的AA5:AH35处,使用large和index+match函数,将B5:C35的数据引用过来,经自动排序后作为条形图的数据源。为了在条形图中突出显示当前选中的区域,本例使用了一列辅助数据AH,若为当前选中区域则对应单元格有值,否则无值,如图6-11所示。具体请参阅范例文件中的设置。

alt

图6-11 自动排序且突出显示当前选中区域的动态图表

这样,不论切换到何指标,条形图将始终呈现由大到小的排序效果,并且突出显示当前所选择的区域。将格式化好的条形图复制到map工作表,放置在地图的右侧。

7.测试模型并确认正确性。

现在,单击地图上方的单选按钮,选择不同的指标,左侧地图和右侧条形图均会切换到相应的指标数据;点击地图上不同的区域,该区域图形会变为红色边框突出显示,同时右侧图表则会突出显示该区域的条形图。

懒人直接用

本模型适于反映一组分区域、多指标的数据表格,使用起来也非常简单。在随书范例包中找到并打开“6.2仿《经济学人》数据地图分析模型.xls(或.xlsm)”文件,启用宏。

●在data工作表的单元格J5开始的位置输入或贴入数据源。

●在map工作表中将指标选择按钮的显示文字修改为新的指标名称。

●测试模型响应正确,开始分析数据。

6.3 在Dashbaord中运用数据地图

开汽车的时候,我们只要瞄一眼仪表盘,就可以很快地知道车速、油量、水温等;开飞机的时候,飞行员只要看一眼仪表盘,就知道飞行的速度、高度、气压、风速、温度、湿度等,从而决定下一步的驾驶操作。商业仪表盘(Dashboard)正是借鉴汽车、飞机仪表盘设计的一种商业分析形式,希望在一屏或一页的范围内清晰、直观地反映与特定主题相关的数据信息,来支持管理者决策。

数据地图是商业仪表盘重要的高级元素。有了前面介绍的各种数据地图形式和做法,如能综合运用,我们完全可以制作出丰富多彩的、包含数据地图元素的分析仪表盘界面。本节介绍几款分析仪表盘案例,看看数据地图在不同类型Dashboard中的应用,从中学习和借鉴其界面设计技巧。

决策分析中的地图

对于业务分布在全国乃至全球的企业来说,数据地图无疑是支持决策分析的绝佳手段。

在美国,每到大选期间,各大媒体都会推出很多精彩的选情分析地图,图6-12是其中的一个经典案例。图中最主要的版面是一个分类填色式的数据地图,清晰地显示了两位候选人分别在哪些州胜出,哪些州则还在竞争之中。地图上方使用了真人照片、大字号KPI显示等方法。蓝色和红色的对比和呼应使用,非常清晰。整个屏幕是一个精美华丽的选情分析决策仪表盘,非常值得学习借鉴。

alt

图6-12 美国2008年选情地图 例图来源:Yahoo公司网站

经营分析系统中的地图

现在很多公司都有自己的经营分析系统或商务智能(BI)系统,公司管理层和决策层通过这些系统呈现的数据来进行分析和决策。

图6-13是《今日美国》网站的一个工作岗位分析界面,具有典型的商务智能系统特征。当在左侧的列表框中进行选择时,右侧的各个图表、表格和地图都会变化,而当点击右侧地图上的某个州时,相关的图表也会切换到该州的数据。一个简单交互界面的背后,是成千上万的数据在支持,而这些数据以一种直观、形象的方式呈现。

alt

图6-13 工作岗位分析应用 例图来源:《今日美国》网站

信息图表(Infographics)中的地图

信息图表是指信息、数据、知识等的视觉化表达,通常用于清晰、高效地传递信息。作为视觉化工具,信息图表包括:图表(charts)、图解(diagrams)、图形(graphs)、表格(tables)、地图(maps)和名单(lists)等。信息图表在国外媒体中有广泛的应用,随着计算机技术的发展有越来越流行的趋势。

图6-14是一个简单的信息图表案例,反映了IE6浏览器在世界各地的市场份额。右上角的大字号KPI一目了然地显示了截至当前的总体市场份额,通过数据地图则可以清楚地看到各个国家的具体市场份额。目前除了在中国、韩国等亚洲国家,IE6在世界上基本已退出市场。

alt

图6-14 运用数据地图的信息图表 例图来源:http://ie6countdown.com/

Excel分析模型中的地图

Excel可以作为一个很好的Dashboard开发工具,具有低成本、高灵活性的特点,尤其适合职场中的商业数据分析人士。

图6-15是一个用Excel制作的仪表盘界面。其数据源本是一个极其简单的数据表格,记录了美国历史上最大的50次风暴的情况,但作者却把它呈现得直观形象、重点突出,具有交互性,非常吸引人。

alt

图6-15 用Excel制作的分析仪表盘Dashboard 例图来源:http://www.databison.com

在模型中,作者利用地图来突出显示风暴发生的位置,给读者以直观的提示;利用大号字体来突出显示KPI信息;利用条形图来可视化风暴带来的损失。右上角的滚动条可以切换年份,以便交互观看。而这一切,只需要用到滚动条控件、VLOOKUP函数和一点宏代码而已。

从以上这些例子看到,在各种形式的数据分析里,都可以有效地运用数据地图这个元素,改善分析的效率和效果,提升分析的专业品质。而运用本书目前为止介绍的各种方法,我们在Excel中基本就可以制作出与这些例子类似的效果了。


alt轻松一刻

一个水手决定去文身,最后在背后文了一幅世界地图。

有一天,他生病了,去找医生。

医生问他:“你哪里不舒服?”

水手回答:“在马六甲的附近。”