java - Neo4j-spatial 导入 OSM 发现不匹配的顶点

标签 java neo4j neo4j-spatial

这是我导入 osmdata 的方法:

private void importOSM(String osm){


    OSMImporter importer = new OSMImporter(osm);
    importer.setCharset(Charset.forName("UTF-8"));

    try{
        importer.importFile(graphDb,osm,false,5000,true);
        importer.reIndex(graphDb,10000);

    }catch(Exception e){
        System.out.println("__________Import Error!! "+e.getMessage());
        e.printStackTrace();
    }
}

当我导入 osmdata 时,我得到:

Mismatching vertices size for Polygon:Node[1799298]: 1 != 2
Mismatching vertices size for LineString:Node[2118494]: 14 != 23
Mismatching vertices size for Polygon:Node[1776324]: 1 != 2
Mismatching vertices size for Polygon:Node[1886154]: 1 != 2
Mismatching vertices size for Polygon:Node[2124799]: 1 != 6
Mismatching vertices size for LineString:Node[2207017]: 60 != 85
Mismatching vertices size for LineString:Node[2207587]: 45 != 154
Mismatching vertices size for LineString:Node[2213928]: 8 != 16
Mismatching vertices size for LineString:Node[2213939]: 8 != 16
Mismatching vertices size for LineString:Node[2212505]: 3 != 14
Mismatching vertices found 100 times
Mismatching vertices found 200 times
Mismatching vertices found 300 times
Mismatching vertices found 400 times
Mismatching vertices found 500 times
Mismatching vertices found 600 times
Mismatching vertices found 700 times
Mismatching vertices found 800 times
Mismatching vertices found 900 times
Mismatching vertices found 1000 times
Mismatching vertices found 1100 times

我认为这是因为我导入的osmdata只是一个摘录,有些街道无法整体导入。我从 http://metro.teczno.com/#san-francisco 导入了 san-francisco.osm (21 MB bzip 压缩的 XML OSM 数据)。所以我的问题是,我的代码或我导入的数据是否有问题,或者这是正常的吗?

问候

最佳答案

是的,这是正常的,您的解释是正确的。当进行 OSM 转储时,它是由边界内的节点节点完成的。这些相同的节点属于超出边界的方式和关系,因此您总是会“切碎”许多几何图形,因此尝试理解 OSM 文件的 Neo4j Spatial 代码会发出许多这样的警告。

对于测试用例中包含的 OSM 数据,您也会看到类似的警告。很难找到已完全清理的 OSM 数据,因此所有几何图形都完全包含在内。

但是,实际的错误可能会导致相同的警告。但我记得当我第一次运行 OSM 导入程序时,我发现了很多这样的警告,而且我总是发现它们是由于导出过程中被剪切的方式造成的。

关于java - Neo4j-spatial 导入 OSM 发现不匹配的顶点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22819984/

相关文章:

java - Spring MVC - 如何在 ResponseEntity 方法中返回 View ?

java - CloudSim - 了解基本模拟结果

java - 将新几何图形添加到 Neo4J 中的 osm 文件

Neo4j 空间 - 执行 Cypher 查询时失败

java - Neo4j-spatial无法导入OSM

java - 如何在 Rscript 中声明全局变量并从 Java 调用它

javascript - 如何修复nodejs + neo4j中的 "connection was closed by sever"?

graph - Neo4j 获取 1 度节点之间的边

linux - Neo4j 在 Linux 或 Windows 上更好地工作?

java - 根据按钮按下选择数组存储的内容