经纬志
首页 / Turf.js / API 文档

dissolve

先看结论

把同一组内相邻的面合成一个,得到合并后的轮廓。

最后验证 2026-11-03 · Turf.js 7.x · 更新 2026-10-27 · 引用本文
turf.dissolve(featureCollection, options) → FeatureCollection

参数

参数类型说明
featureCollectionFeatureCollection待融合的面集合
options.propertyNamestring / string[]分组字段,可多字段

返回值

按分组字段合并后的集合。组内不相邻的面会成为 MultiPolygon, 需要单部件时再用 explode 拆开。

示例

var merged = turf.dissolve(districts, { propertyName: 'city' });
console.log(merged.features.length);
console.log(merged.features[0].geometry.type);

相邻判定

只有共享边界的面会被真正融合。两个面差一点没接上, 或者只在一点相接,结果会是多部件而不是单一面。 融合前做一次吸附能明显改善结果。

属性处理

输出只保留分组字段,其余属性丢失。 需要保留汇总值(总面积、总人口)时,先分组求和,再按字段回填。

融合与并集的差别。union 只处理两个面, dissolve 按属性批量合并整组,做行政区划汇总时用后者。

引用本文

经纬志(2026)。《dissolve》。https://www.jingweizhi.com/turf/api/dissolve.html(访问日期 2026-11-03)。