D3.js 如何将geojason文件转换为topojson而不丢失信息或失真?

D3.js 如何将geojason文件转换为topojson而不丢失信息或失真?,d3.js,geojson,shapefile,topojson,D3.js,Geojson,Shapefile,Topojson,我想使用d3.js在一个交互式地图中绘制主要捕鱼区和分区。我从你那里得到了形状文件。我正在按照“让我们制作一张地图”中给出的说明进行操作。我还想保留所有信息,所以我在终端中写下: ogr2ogr-f GeoJSON sub亚单位sall.json FAO_AREAS.shp topojson-o FAOallsubunits.json-p--subunitsall.json geojson中的转换似乎正常,但topojson的最终结果有问题。有些地方不正确。我在mapshaper.org上查过,

我想使用d3.js在一个交互式地图中绘制主要捕鱼区和分区。我从你那里得到了形状文件。我正在按照“让我们制作一张地图”中给出的说明进行操作。我还想保留所有信息,所以我在终端中写下:

ogr2ogr-f GeoJSON sub亚单位sall.json FAO_AREAS.shp

topojson-o FAOallsubunits.json-p--subunitsall.json


geojson中的转换似乎正常,但topojson的最终结果有问题。有些地方不正确。我在mapshaper.org上查过,有些多边形肯定是错的

这可能是一个反子午线剪裁问题。你能分享topojson的输出吗?这里有一个指向文件的链接:提前谢谢。数据在投影后看起来大致正常:,虽然我看到一个缺失的部分(格陵兰岛的顶部),但我在路上,所以我无法确定地检查,但可能是mapshaper没有生成所需的输出,因为它可能期望笛卡尔坐标。在笛卡尔/2d表示中,任何接触北极的楔体都是四边的。在球坐标系中,它只是一个三面楔体(无论东/西,任何以北90度的点都是相同的)。这可能是一些北部地区出现错误的原因。我还有一个D3.js的正交投影,它没有太平洋的大部分分区:[link]()我明天晚些时候会看一看-我现在正在路上,明天在空中,但我没有忘记这一点。