如何利用excel中的数据源制作数据地图

关于这个问题,制作数据地图的方法已不新奇,总体来说有这么几类方案:

一类方案:直接在excel里制作

优势:个人小数据量应用较为方便简单

缺点:需要熟悉VBA,且更强大的功能对VBA水平要求较高

1、绘制地图图形 + VBA宏语言

思路:用插入图形"任意多边形"绘制地图;每一个"任意多边形"赋予正确名称;对"任意多边形"赋值;利用VBA对"任意多边形"的值进行操作, 例如上色。

先准备一张所需要的地图图片,网上都有,可以下载

然后利用插入绘制多边形图片将地图中的区域描边

 

选定好的区域可以在左上角修改名称

 

将数据表中的数据和地图中的地区做关联,这里就要用到VBA了。

代码:

Sub ProvRefill()
  
    ActiveSheet.Shapes.Range(Array("shandong")).Select
    
    With Selection.ShapeRange.Fill
        .Visible = msoTrue
        .ForeColor.ObjectThemeColor = msoThemeColorAccent1
        .ForeColor.TintAndShade = 0
        .ForeColor.Brightness = -0.5
        .Transparency = 0
        .Solid
    End With
    
End Sub

 

这段代码是修改地图所选区域的颜色的,其他功能类似,懂VBA的会觉得简单,不懂的可以自行百度。

 

2、EXCEL插件集成

这类插件有很多,推荐Power Map for Excel 2013,安装好之后,选择数据区域,启动就行

 

二类方案:其他软件

优势:地图已集成在内,可连接数据库,已有功能强大大数据量处理具有优势

缺点:自定义开发对人员水平要求较高,较困难

这一类软件一般是数据可视化的软件,能用到EXCEL数据源的,现在比较普遍的是报表工具和所谓商业智能大数据工具。

不多说,大家可能觉得陌生,那就直接上实例。

这里介绍FineReport(功能强大最实际的报表工具)

展示数据地图不在话下,关键有地图钻取功能。

所谓钻取就是:比如你点击山东省,进入山东省省地图,显示山东省各市的数据,数据的展示方式可以使用其他图表,比如条形图、气泡图等等。

 

详细步骤:

1、 准备数据源

将excel的数据导入到这个报表设计器里,如果你的excel数据是取自于数据库的话,可以直接从设计器里读取数据库的数据。

2、 合并一片单元格,点击菜单栏中的插入>单元格元素>插入图表,选择地图,然后点击确定,如下图:(这里申明一下,这个软件类似于EXCEL,所以一些操作术语何以类比于EXCEL)

 

1、 选择地图类型,国家地图、省级地图还是其他云云,或者你有自定义的SVG地图也行。这里注意,地图的区域名要和区域数据字段的名字对应。

 

个人觉得钻取才是其亮点,所以这里一定要介绍一下。

钻取:

定义好地图的类型之后,就可以为地图定义数据来源了,选中地图,点击图表属性表-数据,进入数据设置面板,地图展现方式选择多层钻取,如下图:

 

从上图可以看到,钻取层级下有个中国的文件夹,双击即可打开查看中国下面的省份,选中中国文件夹,右击,则会跳出层级设置对话框,如下图:

 

 

要实现点击山东省能出现一张柱状图,这个其实是两张图表关联的,所谓“联动”。

联动:

合并一片单元格,点击插入>单元格元素>插入图表,选择柱形图,点击确定即可添加一张柱形图。

柱形图的数据来源:(这里我都是直接用数据库的数据源)

 

在此,地图和柱形图都已经设置好了,如果要实现联动,需要在设置交互属性。

选中地图,在图表属性表中选择特效,点击交互属性,添加一个超级链接,即点击,添加一个图表超链-联动单元格,设置如下图:

到这里基本就完成了,感觉自己做得图有些low,别毁了人家名声,其实人家功能很强大,可视化很炫的。
另附几张图:



 

 

其他软件的话,还有商业智能可视化类的tableau, FineBI,可能对大家比较陌生,就不做教程介绍了。

总之,利用excel中的数据源制作地图图表方法多多,不当之处还请指正。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值