如何利用excel中的数据源制作数据地图
关于这个问题,制作数据地图的方法已不新奇,总体来说有这么几类方案:
一类方案:直接在excel里制作
优势:个人小数据量应用较为方便简单
缺点:需要熟悉VBA,且更强大的功能对VBA水平要求较高
1、绘制地图图形 + VBA宏语言
思路:用插入图形"任意多边形"绘制地图;每一个"任意多边形"赋予正确名称;对"任意多边形"赋值;利用VBA对"任意多边形"的值进行操作, 例如上色。
先准备一张所需要的地图图片,网上都有,可以下载
然后利用插入绘制多边形图片将地图中的区域描边
选定好的区域可以在左上角修改名称
将数据表中的数据和地图中的地区做关联,这里就要用到VBA了。
代码:
这段代码是修改地图所选区域的颜色的,其他功能类似,懂VBA的会觉得简单,不懂的可以自行百度。
2、EXCEL插件集成
这类插件有很多,推荐Power Map for Excel 2013,安装好之后,选择数据区域,启动就行
二类方案:其他软件
优势:地图已集成在内,可连接数据库,已有功能强大大数据量处理具有优势
缺点:自定义开发对人员水平要求较高,较困难
这一类软件一般是数据可视化的软件,能用到EXCEL数据源的,现在比较普遍的是报表工具和所谓商业智能大数据工具。
不多说,大家可能觉得陌生,那就直接上实例。
这里介绍FineReport(功能强大最实际的报表工具)
展示数据地图不在话下,关键有地图钻取功能。
所谓钻取就是:比如你点击山东省,进入山东省省地图,显示山东省各市的数据,数据的展示方式可以使用其他图表,比如条形图、气泡图等等。
详细步骤:
1、 准备数据源
将excel的数据导入到这个报表设计器里,如果你的excel数据是取自于数据库的话,可以直接从设计器里读取数据库的数据。
2、 合并一片单元格,点击菜单栏中的插入>单元格元素>插入图表,选择地图,然后点击确定,如下图:(这里申明一下,这个软件类似于EXCEL,所以一些操作术语何以类比于EXCEL)
1、 选择地图类型,国家地图、省级地图还是其他云云,或者你有自定义的SVG地图也行。这里注意,地图的区域名要和区域数据字段的名字对应。
个人觉得钻取才是其亮点,所以这里一定要介绍一下。
钻取:
定义好地图的类型之后,就可以为地图定义数据来源了,选中地图,点击图表属性表-数据,进入数据设置面板,地图展现方式选择多层钻取,如下图:
从上图可以看到,钻取层级下有个中国的文件夹,双击即可打开查看中国下面的省份,选中中国文件夹,右击,则会跳出层级设置对话框,如下图:
要实现点击山东省能出现一张柱状图,这个其实是两张图表关联的,所谓“联动”。
联动:
合并一片单元格,点击插入>单元格元素>插入图表,选择柱形图,点击确定即可添加一张柱形图。
柱形图的数据来源:(这里我都是直接用数据库的数据源)
在此,地图和柱形图都已经设置好了,如果要实现联动,需要在设置交互属性。
选中地图,在图表属性表中选择特效,点击交互属性,添加一个超级链接,即点击,添加一个图表超链-联动单元格,设置如下图:
到这里基本就完成了,感觉自己做得图有些low,别毁了人家名声,其实人家功能很强大,可视化很炫的。
另附几张图:

其他软件的话,还有商业智能可视化类的tableau, FineBI,可能对大家比较陌生,就不做教程介绍了。
总之,利用excel中的数据源制作地图图表方法多多,不当之处还请指正。
如何利用excel中的数据源制作数据地图的更多相关文章
- 如何在open xml excel 中存储自定义xml数据?
如何在open xml excel 中存储自定义xml数据? 而且不能放在隐藏的cell单元格内,也不能放在隐藏的sheet内,要类似web网站的Application变量,但还不能是VBA和宏之类的 ...
- Excel中的一列数据变成文本的一行数据
Excel中的一列数据变成文本的一行数据 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/
- 无插件,无com组件,利用EXCEL、WORD模板做数据导出(一)
本次随笔主要讲述着工作中是如何解决数据导出的,对于数据导出到excel在日常工作中大家还是比较常用的,那导出到word呢,改如何处理呢,简单的页面导出问题应该不大,但是如果是标准的公文导出呢,要保证其 ...
- java通过poi读取excel中的日期类型数据或自定义类型日期
Java 读取Excel表格日期类型数据的时候,读出来的是这样的 12-十月-2019,而Excel中输入的是 2019/10/12 或 2019-10-12 poi处理excel时,当excel没 ...
- python 去除Excel中的重复行数据
导入pandas import pandas as pd 1.读取excel中的数据: frame = pd.DataFrame(pd.read_csv('excel的绝对路径.csv'', 'She ...
- C# 在excel中查找及替换数据
在使用Excel处理数据时,有时候工作表内容很多,如果手动地一行一行的找数据很难发现它们在哪个地方.微软Excel给我们提供了一个很强大的数据处理功能-查找和替换,通过这个功能,我们可以快速地找到想要 ...
- [转载]Java读取Excel中的单元格数据
目前网上能找到的读取Excel表格中数据的两种比较好的方案:PageOffice好用开发效率高:POI免费.供大家参考,针对具体情况选择具体方案. 1. PageOffice读取excel impor ...
- Python 使用 xlwings 往 excel中写入一列数据的两种方法
1.准备一个二维列表,然后再range后面不指定任何选项,可以输出该二维列表中数据在一列中显示,如下代码: # -*- coding:utf-8 -*- import xlwings as xw li ...
- 标记excel中输入的重复数据
首先选中需要标记重复的数据列 开始 -> 条件格式 -> 突出显示单元格规则 -> 重复值 选择相应的颜色即可 效果如下:
随机推荐
- JavaScript中的匿名函数及函数的闭包
1.匿名函数 函数是JavaScript中最灵活的一种对象,这里只是讲解其匿名函数的用途.匿名函数:就是没有函数名的函数. 1.1 函数的定义,首先简单介绍一下函数的定义,大致可分为三种方式 第一种: ...
- css毛玻璃效果
毛玻璃其实就是磨砂玻璃,能够模糊的看清背后的风景,让人感觉有种朦胧美,让界面看上去有些层次感. 比如: 高大上啊,接下来肯定是眼馋手痒的过程... 当然,用ps搞一个全景毛玻璃背景毫无疑问是最省事的, ...
- Eclipse切换SVN用户
1. 点击windows --> preference --> Team --> SVN,查看当前的SVN接口. 2. 如果SVN接口是JavaHL,那么找到C:\Documents ...
- C++_系列自学课程_第_10_课_表达式_《C++ Primer 第四版》
程序设计语言中大部分程序都在进行表达式的求值操作, 例如求两个数的和,求一个表达式的逻辑结果,或者通过输入输出表达式语句进行输入和输出. 这里我们对表达式进行讨论. 一.表达式 1.表达式 表达式由一 ...
- 华硕笔记本U盘启动系统/WinPE报错。Windows failed to start. A Recent hardware or software change might be the cause.
最近在整一台华硕笔记本,大概有5年寿命了吧,质量还行,由于系统出了问题,打算用自制U盘WinPE进去修复一下.按照个人经验,在主板设置里启用了USB启动选项,并且设置USB启动顺序为第一个,可是进系统 ...
- C#语言和数据库基础
第一章 第一个C#程序 Vs2012密钥 RBCXF-CVBGR-382MK-DFHJ4-C69G8 01..net和C#的区别 大概在2000年,微软推出了一种革命性的产品--.NET(战略) 目标 ...
- 细说进程五种状态的生老病死——双胞胎兄弟Java线程
java线程的五种状态其实要真正高清,只需要明白计算机操作系统中进程的知识,原理都是相同的. 系统根据PCB结构中的状态值控制进程. 单CPU系统中,任一时刻处于执行状态的进程只有一个. 进程的五种状 ...
- jQuery DateTimePicker 日期控件
在线实例 实例演示 使用方法 <input id="datetimepicker" type="text" > 复制 $('#datetimepic ...
- js 循环li添加点击事件 (闭包的应用)
var aLi = document.querySelectorAll('.article-tab li'); for (var i = 0; i <= aLi.length; i++) { ...
- 巧用CSS实现分隔线
下面是几种简单实现分隔线的方法,个人比较喜欢第二种,我也给出了最后第五种比较2的写法,请大家拍砖,或者提供其他好的方法. 单个标签实现分隔线: 点此查看实例展示 .demo_line_01{ padd ...