topojson - 如何使用 topojson API 简化?

标签 topojson

因此,使用 -s 标志从命令行简化使用 topojson 没有问题,但是,我不知道如何从 节点模块。

我看到一个 topojson.simplify() 方法,但由于没有文档,我不知道它是如何工作的。

有没有人有什么见解?

最佳答案

通过查看 topojson 的简化测试,我能够弄清楚如何使用 toposjson.simplify(),但我不能完全声称知道发生了什么。您可以在 the topojson github 上查看测试.

基本上,topojson.simplify 采用拓扑输入并有 2 个可能的简化选项,“保留比例”和“最小面积”,您还可以传递坐标系,也称为“笛卡尔”或“球形”,尽管它大多数情况下可以推断。

例子:

output = topojson.simplify(topology,{"minimum-area": 2,"coordinate-system": "spherical"});
output =topojson.simplify(topology,{"retain-proportion: 2,"coordinate-system": "spherical"});

我不太确定您传递给这些选项的值到底是什么意思,但是较高的值往往会产生更多的简化。请注意,保留比例在传递 LineString 时通常会返回无效的拓扑,这可能是预期的。

此外,在 topojson.topology 中使用量化选项可用于创建更小、更简单的输出,并且可能是某些类似用例的最佳解决方案,并且在任何地方都没有任何明确记录的服务器 API 示例,因此:

//very simplified, small output
topojson.topology({routes: routesCollection},{"quantization":100});
//very unfiltered, large output
topojson.topology({routes: routesCollection},{"quantization":1e8});

注意:默认量化为 10000 (1e4),因此任何小于 10000 的值都会产生较小的输出,反之亦然。

关于topojson - 如何使用 topojson API 简化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20693910/

相关文章:

javascript - 我在哪里可以获得印度的 .geojson 文件,而不是每个州/地区或任何其他区别的单独文件?

javascript - 在 topojson 上查找缩放距离

javascript - d3.js 提取 SVG 路径元素的坐标

javascript - 如何绑定(bind)数据到对应的D3.js map 元素?

java - GSON读入数组类元素

node.js - topojson 的命令行安装抛出 fatal error

d3.js - 如何将GIS栅格转换为矢量多边形?

d3.js - 如何从 110m TopoJson 世界地图中删除一条线?

d3.js - topojson/d3.js : Uncaught (in promise) TypeError: Cannot read property 'type' of undefined

d3.js - D3. 平移/缩放上的地理性能