Node.js 使用TopoJSON 2.0 API将形状文件转换为TopoJSON

Node.js 使用TopoJSON 2.0 API将形状文件转换为TopoJSON,node.js,d3.js,shapefile,topojson,Node.js,D3.js,Shapefile,Topojson,我正在尝试创建一个应用程序,允许您与美国任何州的任何邮政编码进行交互。我通过使用topoJSON和d3绘制地图来实现这一点。我很难找到一个包含我需要的所有数据的topojson文件,所以我使用GQIS创建了我自己的美国各州的shapefile 最后一步是将我创建的形状文件转换为topoJSON文件。我看过一些使用旧版本topoJSON命令行的教程,它们能够通过运行如下命令将其形状文件转换为topoJSON文件: topojson -p -o illinois.zcta.json -- illin

我正在尝试创建一个应用程序,允许您与美国任何州的任何邮政编码进行交互。我通过使用topoJSON和d3绘制地图来实现这一点。我很难找到一个包含我需要的所有数据的topojson文件,所以我使用GQIS创建了我自己的美国各州的shapefile

最后一步是将我创建的形状文件转换为topoJSON文件。我看过一些使用旧版本topoJSON命令行的教程,它们能够通过运行如下命令将其形状文件转换为topoJSON文件:

topojson -p -o illinois.zcta.json -- illinois.shp
我的理解是,对该请求的剖析是:

topojson (invoking node module) -p(all properties) -o(all objects) illinois.zcta.json(name of file you want) -- illinois.shp(name of file to converT)
但是,Topojson API似乎已经更新,不再支持此请求。我已经使用NPM全局安装了topojson,尝试运行上面的函数会提醒我topojson不是一个函数


我已经深入研究了topoJSON命令行的新版本,它看起来要复杂得多。还有很多方法可以对数据进行切片,但是没有一种方法可以使用Shapefile将其转换为Topojson,或者使用shape文件将其转换为geoJSON,然后我可以将其转换为Topojson。在我看来,这项功能(将.shp文件直接更改为topojson文件)将被删除似乎有些奇怪,尽管它可能从一开始就很神奇。有谁能告诉我如何将形状文件转换为topojson文件?谢谢。

您应该能够使用序列
shp2json
()和
geo2topo
()。但您也可以直接从QGIS获取geojson,这样您就可以跳过第一步。

谢谢!我能够使用shp2json获得一个正常工作的GeoJSON文件,但是当我尝试使用geo2topo转换它时,我遇到了JSON本身的错误,导致两个文件都清空了?我将尝试直接从QGIS导出geoJSON,看看geo2topo是否会更顺畅。