1

我正在尝试创建美国学区的 TopoJSON 文件。我的工作流程如下:

  1. 从人口普查局下载并解压缩单个 TIGER 形状文件(24 ESD,19 SSD,56 USD)
  2. 用ogr2​​ogr批量合并这99个文件
  3. 将合并的 shapefile 转换为 GeoJSON
  4. 将 GeoJSON 转换为 TopoJSON(理想情况下,我也会在此处将状态边界添加到文件中)

第 4 步是导致我出现问题的原因,我正在使用以下批处理脚本:

call topojson ^
    -o SDs11_Topo.json ^
    -p NAME ^
    --simplify-proportion .1 ^
    --id-property GEOID ^
    -- ^
    ESDs11.json ^
    SSDs11.json ^
    USDs11.json
pause

但是我遇到了以下致命的内存错误:

FATAL ERROR: CALL_AND_RETRY_0 Allocation failed - process out of memory

这让我对如何继续感到有些不知所措,如果有人能就更好的工作流程或在转换为 topojson 时更好地管理内存的方法提出建议,我将不胜感激。谢谢你。

4

1 回答 1

2

用于node --max_old_space_size=999 topojson.js ...增加 node.js 可用的内存。

如果您使用的是 node.js 二进制文件,则需要 64 位二进制文​​件。32 位的限制为 1GB。https://code.google.com/p/v8/issues/detail?id=847

于 2013-05-03T08:47:59.607 回答