TopoJSON分割器
将TopoJSON拓扑文件按对象或属性拆分为多个单独的文件,同时保留高效的弧拓扑结构。
Input TopoJSON
or drag & drop
使用方法
- 上传TopoJSON文件或粘贴数据
- 选择拆分方法:
- 按对象(例如国家、省份、城市)
- 按对象内的属性(例如国家代码、行政级别)
- 预览拆分结果 — 查看生成的文件结构
- 下载所有文件为ZIP格式
功能特点
✓ 按对象拆分 — 将每个TopoJSON对象单独分离到文件中
✓ 按属性拆分 — 根据属性值对特征进行分组
✓ 保留拓扑结构 — 维护弧共享和压缩
✓ 智能重新拓扑 — 为每个拆分文件重建弧引用
✓ 属性检测 — 自动检测可用属性
✓ 批量下载 — 将所有文件作为ZIP归档下载
使用场景
🗺️ 提取国家 — 将全球拓扑拆分为单个国家文件
🏛️ 分离图层 — 提取不同对象类型(边界、河流、道路)
📊 区域数据集 — 为特定区域创建拓扑文件
🎯 减小文件大小 — 将大型拓扑拆分为可管理的部分
🔍 目标分析 — 处理特定地理区域
TopoJSON结构
TopoJSON文件包含多个命名对象:
json
{
"type": "Topology",
"objects": {
"countries": { ... },
"states": { ... },
"cities": { ... }
},
"arcs": [ ... ]
}拆分方法
1. 按对象拆分
为拓扑中的每个对象创建一个文件。
输入示例:
json
{
"objects": {
"countries": { ... },
"states": { ... }
}
}输出:
countries.topojsonstates.topojson
2. 按属性拆分
根据属性值拆分对象内的特征。
示例:按ISO代码拆分国家对象
输出:每个国家一个文件
提示
💡 使用对象拆分以分离不同的图层类型(国家、河流等)
💡 使用属性拆分以提取单个特征
💡 预览拓扑结构以了解弧数量和文件大小
💡 保持弧效率通过将相关特征保存在一起
💡 检查量化 — 拓扑精度可能影响拆分结果
技术细节
输入格式
- 有效的TopoJSON拓扑文件
- 必须包含
objects和arcs - 支持所有几何类型
输出格式
- 具有重建拓扑结构的单独TopoJSON文件
- 共享弧在每个输出文件中重复
- 包含所有文件的ZIP归档
弧处理
- 特征引用的弧会包含在输出中
- 未引用的弧会被移除
- 每个文件的弧索引会重新计算
限制
- 拆分会破坏共享拓扑(弧会重复)
- 拆分后文件大小可能增加
- 大型拓扑可能需要较长处理时间
相关工具
- GeoJSON分割器 — 拆分GeoJSON文件
- TopoJSON合并器 — 合并TopoJSON文件
- GeoJSON ↔ TopoJSON转换器 — 格式转换
常见问题
问:拆分会增加文件大小吗?
答:是的,因为共享弧会在各文件中重复。拓扑效率会部分丧失。
问:可以按属性拆分单个对象吗?
答:可以!选择对象后,再选择属性拆分方法。
问:特征之间共享的弧会怎样处理?
答:需要的弧会在每个输出文件中重复。
问:文件名如何生成?
答:对象拆分:使用对象名称。属性拆分:使用属性值(经过清理)。
问:拆分的文件可以合并回去吗?
答:可以使用TopoJSON合并器,但共享拓扑不会自动恢复。
问:如果特征没有拆分属性会怎样?
答:它们会被分组到一个名为“undefined.topojson”的文件中。
问:量化和变换会保留吗?
答:是的,所有拓扑参数都会保留在输出文件中。
问:可以拆分非常大的拓扑文件吗?
答:可以,但处理时间会随着弧数量增加而延长。文件超过50MB可能会较慢。