我在R中的spatstat包中工作,我想从shapefile创建一个“linnet”(网络)类的对象。不幸的是,虽然我能够从ArcGIS获取网络中所有节点的位置,但我无法找到获取边缘列表或邻接矩阵的方法,这些是在spatstat中构建类“linnet”对象所必需的。 。那么如何获得一个(网络中的边缘列表或顶点邻接矩阵)是我的问题。
如果您有任何代码处理此问题,或任何建议,我将非常感谢。
以下是spatstat文档中对象类的描述。
非常感谢,
描述 创建表示线段网络的类“linnet”的对象。 用法 linnet(顶点,m,边) 参数 顶点 - 指定网络顶点的点模式(类“ppp”的对象)。 m - 邻接矩阵。当相应顶点由线连接时,逻辑值矩阵等于TRUE。 (指定m或边。) 边缘 - 边缘列表。一个两列的整数矩阵,指定所有顶点对 应该由边缘加入。 (指定m或边。)
答案 0 :(得分:1)
这是不可能的。如果您只知道节点的位置,则软件无法猜测哪些节点是按行连接的。
如果您从shapefile开始,则需要提取网络线并将其转换为spatstat
类"psp"
对象(平面线段模式)。然后,您可以使用as.linnet
构建网络。