Neo4j shortestPath 不能反向工作

问题描述

我按照neo4j的示例文档来计算给定我自己的网络的最短路径。例如,在我的网络中,从“P1”点到“P13”点,我得到了结果路径。但是当我将源设置为“P13”并将目标设置为“P1”时,却没有任何结果。

我尝试使用 neo4j 网站上的确切示例,如下所示: 当sourceNode为“A”,targetNode为“F”时,返回最短路径结果。 但是当sourceNode为“F”,targetNode为“A”时,最短路径返回空数组。

enter image description here

enter image description here

解决方法

当您 create gds 图时,您应该使用适当的 orientation 属性对其进行配置,在您的情况下为 UNDIRECTED

CALL gds.graph.create(
    'myGraph','Location',{
        UNDIRECTED_ROAD: {
            type: 'ROAD',orientation: 'UNDIRECTED'
        }
    },{
        relationshipProperties: 'cost'
    }
)