专栏名称: 社会科学中的数据可视化
介绍社会科学中数据可视化软件、案例及应用
目录
相关文章推荐
环球人物  ·  “改头换面”后,她成为“顶流” ·  2 天前  
人物  ·  东北的大学更受欢迎了吗? ·  3 天前  
每日人物  ·  辛巴点火,小杨哥渡劫 ·  3 天前  
南方人物周刊  ·  假如圆明园没有被烧毁,它会有多美? ·  1 周前  
51好读  ›  专栏  ›  社会科学中的数据可视化

【ArcGIS教程】如何利用ArcGIS实现空间选址

社会科学中的数据可视化  · 公众号  ·  · 2018-02-12 00:14

正文

“社会科学中的数据可视化”第414篇推送


本次推送以少年宫选址为例,重点介绍Union和Selection命令的使用。

假设现在A市要修建一个少年宫,市政府委托我们为少年宫选址。有两点要求:

  1. 少年宫要位于居民区

  2. 少年宫所在街区的青少年(年龄为5-17岁)数量要大于75个。

如何利用GIS实现上述目标,以下是具体的操作:

Step1: 打开gis文件,了解我们所掌握的信息


这份Mxd文件包含了所有我们可利用的信息。目前可视的图层是Youth Population,这个图层展示了整个区域青少年的密度分布。打开这个图层的属性表:右击Youth Population,选择Open Attribute Table:

找到AGE_5_17这一列,这一列中的值代表每一个街区青少年的数量。选址要求所在街区青少年数量大于75个,即目标街区属性中这一列的值要大于75。
选址要求中的另外一点是少年宫须位于居民区。关于城市用地类型的信息包含在另外一个图层City Zones中。关闭Youth Population图层(把这个图层前的√去掉可以关闭该图层),打开City Zones图层(在这个图层前的小方框内打√),同样操作打开这个图层的属性表:

找到LU_ABV这一列,这一列代表城市用地类型,其中的RES即居民区。

现在我们知道我们需要的信息分布在两个图层当中:Youth Population图层中有每一街区青少年数量的信息;City Zones图层中包含城市用地类型,即是否为居民区的信息。按照市政府的要求,我们选择的少年宫地址须位于青少年数量大于75的居民区内。GIS如何同时对两个图层中的信息进行操作呢?

Step2: Union命令的使用

上一步讲到我们需要同时对Youth Population和City Zones两个图层中的相关属性信息进行操作。为此,我们需要使用Union将两个图层合并为一个图层,然后在这个合并后的图层中进行操作。(这里union命令的作用有点类似stata中的merge命令,如果两份数据是分开存储的,我们很难对两份数据中的个别变量同时进行操作,但是使用merge命令将两份数据合并成一份之后,就可以在这一份数据里面对几个变量进行操作)

Union的用法如下:
点击【Geoprocessing】【Union】打开对话框:

在Input Fecture中选择需要合并的两个图层,这里即Youth Population和City Zones。在Output Feature Class中输入合并后的图层名称,这里是Zone_Union_1。
合并后的图层如下:


合并的目的在于我们希望合并后的新图层能够包含Youth Population和City Zones两个图层的属性信息,可以检查一下新图层是否满足这点要求:打开新图层的属性表:


可见新的Zone_Union_1图层中同时包含了AGE_5_17和LU_ABV两个属性。这说明合并的目的已经达成。

Step3: Selection命令的使用

现在我们需要的信息都在一个图层中,接着就是针对这一个图层进行操作。我们需要做的有两点:1、选出这个图层中的居民区;2、选出居民区中青少年数量大于75的街区。以上目标将主要由Selection命令完成。

点击【Selection】【Selection By Attributes】,打开对话框:
在Layer中选择要进行操作的图层,这里即Zone_Union_1,在Method中选择Create a new selection,在下拉列表中选择LU_ABV,找到Get Unique Value,选择’RES’(或者在最下的方框中直接输入LU_ABV=’RES’)。这一系列的操作是告诉Gis,在Zone_Union_1图层中选中符合条件“LU_ABV=RES”的区域,即选中居民区。

结果如图:蓝色部分即居民区

接着我们需要在居民区内找到青少年数量大于75的街区。
点击【Selection】【Selection By Attributes】,打开对话框:
在Layer图层中选择Zone_Union_1,需要注意的是此次Method应选择Select from current selection,表示是在上一步选择了居民区的基础上继续进行选择。下拉列表选择AGE_5_17,最下方的方框输入AGE_5_17>=75。

结果如图:这就是在上一步选择的居民区内进一步选择青少年数量大于75的结果。图中蓝色部分就是最终满足要求的街区。


注:操作平台为ArcGIS Desktop 10.3


广受欢迎的微信公共账号“社会科学中的数据可视化”每周推送ArcGIS、Python、R、Stata等软件在社会科学各领域中的运用实例及教程。本帐号由复旦大学经济学院陈硕教授及其团队负责。欢迎媒体及学界与我们展开内容合作,联系邮箱[email protected]。查看以前推送:点“社会科学中的数据可视化”并选择“查看历史消息”。搜寻帐号: SKSJKSH或扫描二维码如下: