技术专栏

gis培训

寻找最短路径——上篇(译)

作者:王维佳(译) 邮箱:wangwj@lreis.ac.cn 发布时间:2014-12-10 11:07:14 阅读(2130)

    原作者: John Fry 和Bob Booth

你有没有遇到过这种情况:需要计算从中心位置到相关重要地点的距离,比如从基地或办公室到资产持有者的距离,从办公室到施工地的距离?本篇文章就是给出一个用于解决这种问题的方法流程,我们所用到的数据是两份简单的表格文件,一份用于记录基地(base),一份用于记录资产持有者(asset)。

在这个流程中,你需要将表格文件转换为点要素,为点要素创建副本,使用道路网找到每个基地(base)到最近持有者(asset)的最短路径,最后进行汇总统计。 

最终结果如图:

说明: All routes symbolized by base

1 最终效果图

这种分析有助于了解搬迁办公室的一些影响,确定搬迁服务成员的补偿额度,或决定设备是否需要被重新分配给另一个总部。 

1.你需要准备的数据包括:

  1. 1.       一份“Asset”文本文件。

它包含多个字段,每个字段之间用逗号分隔,字段包括:名称(或ID),地址(或坐标),商店所属的基地或办公室。例如:

说明: Asset text file schema

2  Asset文本文件构成

我们给出了一个案例文件,在这个文本文件中包含了6个字段:Name(名称),Street(街道),City(城市),State(州),ZIP(邮编),Country(国家),Base(基地名)。

说明: http://blogs.esri.com/esri/arcgis/files/2014/10/Assets_CSV_File.png

3  Asset样例文件

注意,这里的地名都是虚构的,而它们的地址是通过一系列随机点的反向推理得出的。 

  1. 2.       一份“Base”文本文件。

它包含多个字段,每个字段之间用逗号分隔,至少应该包含基地的地址和名称。该文件中的基地名称必须和“Asset”文件中的基地名称匹配。例如:

说明: Bases text file schema

4  Base文件构成

我们同样给出了一份案例文件,包含5个字段:Base(基地名), Street(街道), City(城市), State(州), Zip(邮编)。

说明: http://blogs.esri.com/esri/arcgis/files/2014/10/Bases_CSV_File.png

5  Base样例文件

这张表中的基地名称必须和Asset表中的基地名称完全匹配。

  1. 3.       一个地址定位器(有时我们也称之为“地理编码”)。

可以使用平时处理你自己的网络数据的地址定位器,或者使用世界地理编码服务(WorldGeocoding Service),ArcGIS Online会员可以从网上免费获得。

  1. 4.       一个街道网络数据集。

你可以使用ArcGIS Online logisticsservice(后勤服务)里的FindClosest Facility(查找最近设施)工具,或者使用你自己的街道网络数据。如果你使用的是本地数据,那么你需要有ArcGIS网络分析扩展模块的许可。

2.准备工作:

  1. 下载数据模板,包括案例数据和地图。

  2. 将文件解压缩到你的计算机,文件夹包含一个GDB,一个图层文件夹,一个样本位置文件,一个地图文档和一个工具箱。

  3. 打开DistanceToAssets.mxd 地图文档,地图会自动打开美国街道地图作为底图。

  4. 打开ArcMap内嵌的Catalog,这样就可以轻松访问Distance to Assets工具箱了。

每一个模型都带有编号,用来指示他们的运行顺序。对于第三步路径选择,有ab两个模型可以选择,分别用于本地网络数据和ArcGIS Online服务。

说明: Distance to assets folder contents

模型 

3.步骤一:创建点要素

    第一步,使用地理编码器将文本文件转换为点要素,使用1 Geocode Assets and Bases模型即可。如果你拥有ArcGISOnline账户,可以通过ArcMap(在文件菜单中点击登录)登录ArcGIS Online,然后使用在线地理编码。如果你拥有本地街道数据和地址定位器,那么你可以直接使用本地地理编码器。

  1. 1.如果你拥有ArcGIS Online账号,你想使用在线地理编码,在Catalog中找到GIS Servers,双击Add ArcGIS Server

  2. 2.选择Use GIS Services选项,单击Next

  3. 3.设置Server URLhttps://geocode.arcgis.com/arcgis/services

  4. 4.单击完成。

  5. 5.打开Geocoding工具条,在下拉菜单中单击Manage Address Locators

  6. 6.如果你已经登录ArcGIS OnlineWorld Geocode ServiceArcGIS Online)应该被激活了(前面带有星号)。如果你想使用另一个地址定位器,单击Add按钮,找到需要使用的地址定位器,使其激活。然后关闭Address Locator Manager对话框。

  7. 7.运行第一个模型1 Geocode Assets and Bases

  8. 8.选择一个地址定位器。比如ArcGIS Online上的World Geocoding Service,或者通过你自己的街道数据配置完成的本地定位器。可以查看网页帮助以获取更多关于查找位置的内容。

  9. 9.选择一个带有地址信息的Assets数据,你可以使用我们在Sample Location文件夹中准备的Asset.csv文件。

  10. 10.选择Input location fields for the assets,你需要将你的数据和这个表格里的地理编码进行匹配(我们准备的样例数据会自动匹配Street_Addresses_US地址定位器和ArcGIS Online World Geocoding Service)。

  11. 11.为你的Asset数据选择输出位置,输出类型为要素类。

  12. 12.为Base数据设置类似的输入参数。

  13. 13.单击OK运行模型。

说明: Geocode Assets And Bases dialog box

模型1 

当模型运行完成后会生成两个新的要素类,AssetsGeocodedBasesGeocoded 

说明: Geocoded bases and assets sample map

模型1结果

有一些地址可能没有很准确的匹配,它们会显示在AssetsNotGeocodedBasesNotGeocoded要素类中,属性表中status列里会标明“U”,同时它们不会显示在图上。你可以通过修改Geocoding工具条上的Addresses工具来改善结果,详情可以参看ArcGIS帮助文档 

原文地址:

http://blogs.esri.com/esri/arcgis/2014/10/28/find-the-distance-to-assets-from-bases/ 

数据和模型下载地址见原文。

作者:王维佳(译) 邮箱:wangwj@lreis.ac.cn

HiGIS技术交流QQ群:336076300

关键词:arcgis,esri,最短路径,表格转点,空间分析

中科地理信息系统培训中心-原创文章
转载请注明出处:www.higis.cn/Tech/tech/tId/82/

创新地理知识,共享地理价值

http://www.higis.cn

中科地理信息系统培训中心

关于我们

gis培训

苏州高新区中科地理信息系统培训中心是“国家专业技术人员继续教育基地”指定培训点,是3S方向唯一指定的培训点。同时也是国内唯一获得Esri授权的ArcGIS专业培训与认证机构,为广大用户提供ArcGIS培训、开发和咨询服务,中心已经为中国用户服务20年...详细情况...

联系方式

Email:actc@lreis.ac.cn
苏州总部电话: 0512-68076858
        0512-68075672
北京分部电话: 010-64855687
苏州总部地址:苏州市高新区科灵路78号苏高新软件园5号楼3层
北京分部地址:北京市朝阳区大屯路甲11号中科院地理所2406

顶部 返回
地理信息系统国际培训中心