You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:如何将含多边形、线、点的JSON文件转换为Shapefile

将GeoJSON转换为Shapefile的实用方法

以下是几种可靠的转换方案,覆盖可视化工具、命令行、代码三种场景:

1. 使用QGIS(可视化操作,适合新手)

  • 打开QGIS,点击「图层」>「添加图层」>「添加矢量图层」
  • 在弹窗中选择文件类型为「GeoJSON」,选中你的JSON文件(需为标准GeoJSON格式)
  • 图层加载完成后,右键点击图层 >「导出」>「保存要素为」
  • 格式选择「ESRI Shapefile」,设置保存路径和文件名,确认导出即可

2. 使用GDAL命令行(适合批量/自动化处理)

  • 确保已安装GDAL(多数GIS工具自带,也可单独安装)
  • 打开终端/命令提示符,执行基础转换命令:
    ogr2ogr -f "ESRI Shapefile" 输出目录/文件名.shp 你的JSON文件路径.json
  • 若JSON包含多种几何类型(点、线、面),可按类型拆分导出,比如仅导出多边形:
    ogr2ogr -f "ESRI Shapefile" polygons.shp input.json -where "OGR_GEOMETRY='Polygon'"

3. 使用Python脚本(自定义处理场景)

  • 先安装依赖库:pip install geopandas
  • 编写简单脚本完成转换:
import geopandas as gpd

# 读取GeoJSON文件
geo_data = gpd.read_file("你的JSON文件路径.json")
# 导出为Shapefile
geo_data.to_file("输出目录/shapefile文件名.shp", driver="ESRI Shapefile")

注意事项

  • 确认你的JSON是标准GeoJSON格式,若为自定义结构,需先提取几何坐标与属性信息,转换为GeoJSON规范
  • Shapefile对字段名长度限制为10字符,导出时会自动截断长字段名,需提前检查属性
  • 单个Shapefile仅支持存储一种几何类型,多类型数据建议拆分导出

内容的提问来源于stack exchange,提问作者Bamba

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 08:55:16