GIS数据格式有哪些?存储格式和格式转换

GIS基础理论
Dr.GIS
wowwwai GIS研习社 · 工具流程与项目排障

很多初学者问“GIS数据格式怎么选”,其实背后不是记后缀名,而是判断数据模型、存储方式、坐标系、字段结构和后续使用场景。比如同一份道路数据,做桌面制图可以用 GeoPackage,给 WebGIS 前端预览可以用 GeoJSON,进入企业生产库则更适合 PostGIS。

本文从实际项目出发,解释 GIS数据格式有哪些、常见存储方式的差异,以及 GIS数据格式转换 时最容易出错的检查点。读完后,你不需要死记所有格式,而是能根据“编辑、分析、发布、归档”四类任务做出稳定选择。

GIS数据格式有哪些与格式转换流程图
常见 GIS 数据从文件存储、数据库存储到 Web 发布格式的转换思路。

问题背景:为什么 GIS文件格式 经常转换后出错

在真实 GIS 项目里,数据格式问题通常不是“软件打不开”这么简单。更常见的是:QGIS 能打开,ArcGIS Pro 字段乱码;地图能显示,但面积计算不准;GeoJSON 加载成功,却在 WebGIS 中卡顿;Shapefile 转出后字段名被截断。这些问题都和 GIS文件格式 的能力边界有关。

每一种 GIS数据格式 都在回答几个问题:几何怎么存,属性字段怎么存,坐标系怎么记录,索引和压缩怎么处理,是否支持多图层、事务编辑、拓扑关系和大数据量访问。如果只看文件后缀,不检查这些约束,格式互转后就很容易出现精度、字段、编码或坐标系问题。

核心原则:先看 GIS数据格式有哪些 数据模型

最实用的方法是先按数据模型分类,而不是按软件分类。GIS 数据的核心模型通常有四类:矢量、栅格、表格坐标数据和三维或点云数据。

数据模型 典型内容 常见格式 适合场景
矢量数据 点、线、面和属性表 Shapefile、GeoPackage、GeoJSON、File Geodatabase、KML 行政区、道路、POI、地块、管线
栅格数据 像元矩阵和波段 GeoTIFF、COG、IMG、NetCDF、ASCII Grid 遥感影像、DEM、气温、土地覆盖
表格坐标数据 经纬度字段、地址、事件点 CSV、Excel、Parquet、数据库表 采样点、业务门店、轨迹点导入
三维与点云 高程点、三维网格、倾斜摄影 LAS、LAZ、3D Tiles、OBJ、glTF 激光点云、城市三维、实景三维发布

这一步能避免一个常见误区:把所有数据都转成 Shapefile。Shapefile 是经典矢量格式,但它不适合复杂字段、多图层容器、超大数据量和现代 Web 发布。对于新的项目交付,GeoPackage、PostGIS、GeoTIFF、COG、GeoJSON 等格式通常更容易形成可维护的数据链路。

GIS数据存储格式怎么选:文件、数据库与服务

GIS数据存储格式 可以按“单机文件、空间数据库、网络服务或传输格式”来理解。选择时不要只问“哪个最通用”,而要问“谁来编辑、谁来分析、谁来发布、数据会不会持续更新”。

  • 桌面交换:小到中等规模矢量数据优先考虑 GeoPackage,单文件、支持多图层,适合 QGIS 和跨软件交换。
  • 历史兼容:需要和老系统或测绘单位交换时,Shapefile 仍常见,但要注意字段名长度、编码和多文件组成。
  • ArcGIS 生产:ArcGIS Pro 团队内部编辑可使用 File Geodatabase,适合要素类、域、子类型和地理处理流程。
  • 多人协作:持续更新、权限控制和空间查询建议进入 PostGIS 等空间数据库。
  • 影像归档:遥感影像和 DEM 常用 GeoTIFF;面向云端读取时可使用 COG 这类便于分块访问的影像格式。
  • Web 发布:少量矢量可用 GeoJSON;大范围或高并发地图更适合矢量瓦片、栅格瓦片或服务接口。

因此,这种存储选择不是一次性决定。一个项目可以同时存在生产库、分析中间文件和前端发布格式。例如:PostGIS 保存权威数据,GeoPackage 用于离线交付,GeoJSON 或 MVT 用于 WebGIS 展示。

常见 GIS数据格式 对比:不要只看能不能打开

下面这张表可以作为入门判断表。它不替代项目规范,但能帮助你快速识别每种 GIS数据格式 的常见用途和风险。

格式 类型 优点 主要风险
Shapefile 矢量文件 兼容性强,几乎所有 GIS 软件都能读写 由多个文件组成,字段名受限,编码和大文件处理容易出问题
GeoPackage 矢量和栅格容器 单文件、多图层、跨平台,适合课程和项目交付 部分旧系统支持不完整,协作编辑不如数据库
GeoJSON Web 矢量交换 结构直观,适合前端调试和小数据发布 大文件加载慢,通常不适合直接承载全国级复杂面数据
GeoTIFF 栅格影像 能保存地理参考和波段信息,适合遥感和 DEM 文件可能很大,金字塔、压缩和 NoData 需要单独检查
PostGIS 空间数据库 支持空间索引、SQL 分析、权限和多人协作 需要数据库运维能力,导入时要统一 SRID 和字段类型
KML/KMZ 浏览和交换 适合 Google Earth 浏览和轻量标注共享 复杂属性和批量空间分析能力有限

GIS数据格式转换的标准流程

GIS数据格式转换 不只是“另存为”。可靠流程应该包括转换前检查、转换参数设置、转换后验证三段。无论你使用 QGIS、ArcGIS Pro、ogr2ogr、GeoPandas 还是 PostGIS,都建议按下面步骤做。

  1. 确认数据类型:先判断是点线面、栅格、表格坐标还是三维数据,避免把不适合的结构硬转成目标格式。
  2. 确认坐标系:查看源数据 CRS,明确是地理坐标系还是投影坐标系。面积、长度和缓冲区分析通常需要合适的投影坐标系。
  3. 检查几何有效性:面数据转换前先修复自相交、空几何、重复节点等问题。QGIS 可用“修复几何”,PostGIS 可检查 ST_IsValid。
  4. 整理字段:统一字段名、字段类型、日期格式和编码。转 Shapefile 时尤其要提前处理过长字段名。
  5. 设置目标格式参数:例如 GeoPackage 的图层名、GeoJSON 的坐标精度、GeoTIFF 的压缩方式和 NoData 值。
  6. 转换后抽样核对:检查要素数量、范围、字段数量、坐标系、面积统计和典型图斑位置。

如果使用命令行工具,GDAL/OGR 的 ogr2ogr 是常见选择。下面示例把 Shapefile 转为 GeoPackage,同时指定目标图层名:

ogr2ogr -f GPKG roads.gpkg roads.shp -nln roads

如果需要在转换时统一坐标系,可以增加目标坐标系参数。实际项目中不要盲目套用 EPSG 编号,必须先确认业务区域和分析目的。

ogr2ogr -f GeoJSON roads_4326.geojson roads.gpkg roads -t_srs EPSG:4326

QGIS、ArcGIS Pro、GeoPandas 和 PostGIS 的转换用法

不同工具适合不同规模的批量转换。如果只是一次性课堂练习,QGIS 的“导出另存为”最快;如果要批量处理目录,GeoPandas 或 GDAL 更稳;如果数据已经进入生产库,PostGIS 内部转换和导出更容易保证一致性。

QGIS 适合可视化检查

在 QGIS 中右键图层,选择“导出”并保存为目标格式。适合检查坐标系、字段编码、图层范围和样式预览。对于格式入门者,QGIS 的优势是能立即看到转换结果是否偏移、乱码或丢字段。

ArcGIS Pro 适合地理处理流程

ArcGIS Pro 可用“要素类转要素类”“复制要素”“栅格复制”等工具完成转换。团队已经使用 File Geodatabase 管理数据时,建议把转换流程做成 ModelBuilder 或 Python 脚本,减少人工点选参数造成的差异。

GeoPandas 适合 Python 批处理

GeoPandas 适合把多个文件批量转为统一格式,也适合在导出前清理字段。示例逻辑如下:

import geopandas as gpd

gdf = gpd.read_file("parcels.shp")
gdf = gdf.to_crs(3857)
gdf["area_m2"] = gdf.geometry.area
gdf.to_file("parcels.gpkg", layer="parcels", driver="GPKG")

PostGIS 适合生产库和空间查询

如果数据需要多人编辑、空间索引、增量更新和权限管理,PostGIS 通常比普通文件更合适。导入后要检查 SRID、几何类型和空间索引,避免后续 ST_Intersects、ST_Within 等查询变慢或结果异常。

常见坑点:格式选择不是越通用越好

  • 坐标系丢失:有些数据文件缺少 .prj 或 CRS 元数据,软件可能只能显示坐标数值,不能判断真实空间位置。
  • 编码乱码:中文字段在 Shapefile、CSV、老系统导出文件中最常见,转换前要确认源编码和目标编码。
  • 字段类型变化:Excel、CSV 和数据库之间转换时,数字、文本、日期容易被自动推断错误。
  • 面几何无效:叠加分析、裁剪和格式导出前如果不修复几何,可能出现要素丢失或处理失败。
  • Web 文件过大:把完整行政区面直接转成 GeoJSON 给前端加载,常会造成浏览器卡顿。应先简化、切片或改用服务发布。
  • 只交一个 .shp:Shapefile 不是单文件,至少需要 .shp、.shx、.dbf,通常还要包含 .prj 和编码相关文件。

实用清单:拿到新数据后先检查什么

无论来源是自然资源部门、测绘单位、开源平台还是业务系统,拿到新的 GIS数据格式 后都建议先做一轮基础体检。

  1. 能否正常打开,图层数量是否符合交付说明。
  2. 坐标系是否明确,是否和项目底图、行政区或影像对齐。
  3. 要素数量是否和数据说明一致,是否存在空几何。
  4. 字段名、字段类型、中文编码是否正常。
  5. 空间范围是否异常,例如数据落到海上、赤道附近或坐标原点附近。
  6. 面积、长度、点位抽样是否符合业务常识。
  7. 目标软件或平台是否真正支持这种格式。
  8. 是否需要生成空间索引、影像金字塔或 Web 瓦片。

Dr.GIS 建议:教学和小型项目优先掌握 Shapefile、GeoPackage、GeoJSON、GeoTIFF 和 PostGIS 这五类格式。它们覆盖了桌面制图、空间分析、Web 发布和数据库管理的主要场景。

FAQ:常见问题

GIS数据格式有哪些是初学者必须掌握的?

初学者先掌握 Shapefile、GeoPackage、GeoJSON、GeoTIFF、CSV 坐标表和 PostGIS。它们覆盖了最常见的 GIS数据格式 学习路径:矢量编辑、栅格分析、网页展示、表格点位导入和数据库管理。

GIS数据存储格式 和 GIS文件格式 是一回事吗?

不完全一样。GIS文件格式 多指本地文件,例如 .shp、.gpkg、.geojson、.tif;GIS数据存储格式 的范围更大,还包括 PostGIS 这类空间数据库、瓦片缓存和服务端发布结构。做项目时应从存储和使用链路整体考虑。

GIS数据格式转换 用 QGIS 还是 ArcGIS Pro 更好?

简单转换和可视化检查可以用 QGIS;ArcGIS Pro 更适合已经在 Esri 体系内的地理处理流程;批量任务建议用 GDAL、ArcPy 或 GeoPandas。关键不是工具名字,而是转换前后要检查坐标系、字段、几何和要素数量。

为什么 Shapefile 转 GeoJSON 后文件很大?

GeoJSON 是文本结构,几何坐标会以可读文本保存,复杂面或高精度线数据会明显变大。做 WebGIS 发布时,建议先做几何简化、字段裁剪、坐标精度控制,或者改用矢量瓦片和服务接口。

做空间分析时应该优先选择哪种 GIS数据格式?

单机分析可以优先使用 GeoPackage 或 File Geodatabase;批量和多人协作分析建议使用 PostGIS;栅格分析则常用 GeoTIFF。选择时要看数据量、并发、字段复杂度、坐标系和后续发布方式。

结论:用任务反推 GIS数据格式

理解 GIS数据格式 的关键,是把格式看成数据工程的一部分,而不是软件菜单里的导出选项。先判断数据模型,再选择合适的存储方案,最后按标准流程完成格式转换和质量检查,才能减少坐标偏移、字段乱码、几何错误和 Web 加载慢等问题。

如果你只记一个原则:编辑和分析要稳定,发布和交换要轻量,归档和协作要可维护。围绕这个原则选择文件格式,比死记几十个后缀名更可靠。