时间:2020-01-08 22:00作者:admin来源:未知人气:755我要评论(0)
第一步:需要一张普通的地图图片
这个很简单,网上到处都有。中国的省级地图,地级市地图,甚至县级地图都可以找到。这里两个小要求:1)尽量找张干净的图,干净指的是地图的边界清晰;2)svg格式的图(Scalable Vector Graphics)- 别慌,推荐你个下载svg格式地图模板的好去处: Wikimedia Commons
在这个网站搜索China provinces,可以得到下面这些图(上百张),第一张图就很符合我们的要求:
第二步:打开下载的svg图。这里推荐个免费开源的软件:Inkscape。用这个软件打开svg的地图,然后另存为Enhanced Meta File(emf)格式的文件。
第三步:用excel导入emf的文件,然后ungroup这个地图变成freeform的图形,如下图。
这样我们就得到了excel里面的地图素材。
第四步:每个省现在对应的名字都没有,我们需要重新命名。简单的方法:鼠标点击选一个省,在左上角公式旁边的文本框里输入省的名字,如下图:
第五步:在excel里另建一个worksheet,按照下图来设计数据版面:
更新:F列每个颜色的单元格漏写了对应的命名,比如白色的单元格,将其命名为对应的J列的值(classpro0)
渐变颜色可以自己选择,目前这个例子是从0到5六种类别(颜色),根据你的研究需要(比如各省人均收入水平你按照高低分了10类,那就10种),随便改多少种都可以,唯一注意的就是命名的区域要跟着变。再啰嗦一下:根据你自己的分类标准,筛选你的数据,将筛选后的分类结果(比如6种 0-5)对应到之前提到的类别中,这样也就对应好了颜色。
第六步:这些都做完了,在地图那页worksheet里面加个按钮,把下面这段VBA程序copy进去:
For i = 2 To 32 '这里是省的数量,2代表的是后面连接的数据表起始位是第二行,可以根据你自己的设计更改
Range("actRegProvince").Value = Range("Data_Province!D" & i).Value '按顺序选取数据表中省份
ActiveSheet.Shapes(Range("actRegProvince").Value).Select '激活对应的省份地图
Selection.ShapeRange.Fill.ForeColor.RGB = Range(Range("actRegCodeProvince")).Interior.Color '将数据表中省份对应的颜色类别赋值给对应的省份地图
Next i
补充说明:Data_Province!D中Data_Province是数据表(worksheet)的名字,D指的是省份名字所在的列(见上面那张截图)。根据自己的需要可以改成你喜欢的名字或位置。
第七步:这步不算了啊!就是六步~
点击按钮,享受成果,不谢!
把刚才的地图换成紫色渐变色,效果如下:
我过去的研究用过的一些样图(ps: 数据原因,有些图未包含台湾):
地级市级别方言地图
地级市层面经济集群图
神经网络算法分类中国地级市
同样方法制作县级地图
相关阅读 你想学的FILTER函数用法,很全了当Excel体积臃肿,运行卡顿时,我们应该做些什么?带合并单元格的表格,求和计数也不难Excel筛选条件怎么设置ExcelA4页面怎么设置Excel表格A列被隐藏了怎么恢复Excel图例位于底部怎么设置Excel图表怎么嵌入单元格Excel没保存不小心关闭怎么恢复Excel图表怎么设置X轴Y轴
热门文章 excel怎么制作表格?制作excel表格的步骤技巧excel 常见的六个排序方法,你必须要学会excel自动换行显示不全怎么办excel 数据透视表 选定区域不能分组 的原因和解决方法
最新文章
你想学的FILTER函数用法,很全了当Excel体积臃肿,运行卡顿时,我们应该做些什么?
带合并单元格的表格,求和计数也不难Excel筛选条件怎么设置ExcelA4页面怎么设置Excel表格A列被隐藏了怎么恢复
人气排行 excel怎么制作表格?制作excel表格的步骤技巧excel 常见的六个排序方法,你必须要学会excel自动换行显示不全怎么办excel 数据透视表 选定区域不能分组 的原因和解决方法Excel高级筛选怎么用 excel高级筛选多个条件(并且、或用法)excel if函数的多个条件使用方法Excel中的快速填充键ctrl+e没反应,不能用是为什么?excel 判断两列数据是否一致的四种方法
盖楼回复X
(您的评论需要经过审核才能显示)
查看所有0条评论>>