查看原文
其他

ArcGIS网络分析之常见问题分析、诊断汇总

ceibake GIS前沿 2021-06-14


在进行网络分析时,经常会遇到AB两点之间找不到路径、停靠点无效、分析结果不对。本文将从这几个方面入手,告诉大家如何来排查及解决这些问题。


一般流程:


1、检查数据的坐标系,建议使用投影坐标系。

2、检查数据的连通性。

3、换一份数据测试。


一、停靠点无效


添加或导入停靠点后,发现停靠点前有问号。



说明停靠点没有捕捉到道路上,可以通过调整停靠点的位置或是搜索容差修正此问题。检查容差后没有问题,还需要检查数据的坐标系,建议使用投影坐标系。



调整搜索容差后,有问题的停靠点前还是会有问号,可以删除所有停靠点,再导入一次。


PS:最好在导入停靠点时就设置好搜索容差。




二、构建网络数据集时,检测到孤立点


构建时,报错“Standalone user-defined junction is detected.”



在创建网络数据集时,如果点在网络数据集中没有任何意义(比如不代表公交站,也不表示道路端点的高程等),请不要让其参与创建。


此问题的解决方法是移除点要素类。





三、求解失败



遇见过这样一个案例,是因为停靠点超级多。减少停靠点后,就可以解决了。

如果不是停靠点个数的问题,建议使用其他数据测试一下,看是否还有此问题。


四、分析结果不符合预期


1、AB两点间没有路


停靠点之间明明应该是有结果的,但出现“错误:未找到解决方案。” Error: No solution found.



请按照如下步骤排查:


1)检查道路数据的交叉处,是否是连接上的,即路不是断开的。


最快的方式就是放大交叉处,看线是不是连在一起的。当然,如果数据较多,可以使用拓扑检查,使用不能有悬挂点(Must Not Have Dangles)规则。


如果交叉处是连接的,那么就不会有拓扑错误。



2)检查网络数据集的连通性。



关于连通性的介绍,可以参考:https://blog.csdn.net/ceibake/article/details/89504839


3)检查那一片路是不是孤路,也就是不和其他任何路连着。


和上一点类似。图中两点是没有分析结果的。



4)检查停靠点的捕捉方式。


如下图,进行OD分析时,起始点和目的地点都是30个,但是结果却只有529条路径。本应该有900条的。



停靠点默认设置是捕捉到最近的路上,但是本案例中,停靠点捕捉到了最近的铁路上,而铁路又无法到直接到其他道路上,所以导致分析不出结果。修改捕捉方式后,就有结果了。



2、服务区分析,设置中断值1公里,为什么结果是1.3公里?


这是ArcMap的已知问题。


BUG-000112091:Network Analyst uses geodesic distance instead of planar if the coordinate system is Web Mercator Auxiliary Sphere and there is only one cost attribute which uses the Shape field:


在特定条件下才会发生此问题:


  1. 在ArcMap中使用网络分析;

  2. 数据的投影是 Web Mercator Auxiliary Sphere 或 Web Mercator;

  3. 网络数据集仅有一个成本属性;

  4. 成本属性使用的是Shape字段。


根据以上列出的几个条件,有很多解决方法。比如新加一个成本属性,成本属性使用Shape_Length字段。推荐使用的方法是进行投影转换,可以选择一个等距投影,这样计算距离更准确。


在ArcGIS Pro中没有这个问题。


3、ArcGIS Pro中执行3D网络分析,结果不正确。同样的数据,在ArcScene中结果是正确的。


下图是模拟的楼梯走向,Pro中两点的分析结果是整个路线或是部分路线。Pro中执行分析后,会有警告"WARNING 030185: Your network data source is 3D, but it has an unknown Z coordinate system. Points will be located on the network as if the network were in a 2D plane, ignoring the network’s Z coordinates."



在ArcScene中结果是正确的。



ArcGIS Pro 3D网络分析中,网络分析图层、停靠点都需要带有Z值且有垂直坐标系,才能执行成功。


五、其他


1、创建网络数据集的选项是灰色的,网络分析工具条上的分析选项也是灰色的。



1)必须有网络分析扩展模块许可。在ArcGIS Administrator(ArcGIS许可管理员),Availablity(可用性)中查看是否有Network Analyst。


2)必须激活网络分析扩展模块。菜单栏Customize(自定义),Extensions(扩展模块),勾选Network Analyst。



2、创建网络数据集时,对话框中看不到下一步,重装也不行。



创建网络数据集的对话框没有缩放功能,所以无法调整大小。可以参考如下几个方法:


  • 方法1:更改操作系统的文本、应用等项目的大小。我的电脑默认是推荐的150%,改为100%即可。





  • 方法2:将状态栏推拽到屏幕左侧。这个电脑屏幕尺寸也有关系,如果对话框中的下一步还是显示不出来,还是用方法1吧。




3、创建网络数据集前,数据要不要都打断。

不需要。可以设置网络数据集的连通性。


4、创建网络数据集前,高速公路、国道、省道等是不是分要素类存储。

不需要。网络数据集支持子类型。


在网络分析数据集的连通性属性设置界面中,点击子类型,就可以设置连通性组、设置连通性规则了。



5、服务区分析结果中,为什么设施点没有在服务区范围内?

分析结果是正确的,原因是设施点离网络边的距离太远。下图中,服务区半径是1km。



关于点为什么在服务区外面, 原因是我们在进行分析的时候,采用的是网络上的设施点。如果点没有在网络上,那么将点落在网络上(根据点到网络的最短距离得出网络上的设施点),然后利用网络上的点进行服务区分析。我们分析出来的服务区面是一个假想的面,实际分析处理的是网络上的线,然后采用不规则三角网(TIN)的算法构面。


6、ArcGIS Pro中无法创建网络数据集。

目前是计划在2.4版本中添加此功能。如果研发中我们没有遇到任何障碍,会在2019年6月末发布。如果它因为任何原因出现故障,它应该会在今年年底被纳入ArcGIS Pro 2.5中。


这是一种预估,而不是承诺。


- END -


ArcGIS在土地整理中的小案例汇总
7.72GB ARCGIS  ERDAS  ENVI干货教程网盘下载
使用ArcGIS制作城市关系强度图(附数据下载)
ArcGIS地图制图教程—超详细【值得推荐】

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存