GIS数据格式有哪些?存储格式和格式转换
很多初学者问“GIS数据格式怎么选”,其实背后不是记后缀名,而是判断数据模型、存储方式、坐标系、字段结构和后续使用场景。比如同一份道路数据,做桌面制图可以用 GeoPackage,给 WebGIS 前端预览可以用 GeoJSON,进入企业生产库则更适合 PostGIS。
本文从实际项目出发,解释 GIS数据格式有哪些、常见存储方式的差异,以及 GIS数据格式转换 时最容易出错的检查点。读完后,你不需要死记所有格式,而是能根据“编辑、分析、发布、归档”四类任务做出稳定选择。

问题背景:为什么 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,都建议按下面步骤做。
- 确认数据类型:先判断是点线面、栅格、表格坐标还是三维数据,避免把不适合的结构硬转成目标格式。
- 确认坐标系:查看源数据 CRS,明确是地理坐标系还是投影坐标系。面积、长度和缓冲区分析通常需要合适的投影坐标系。
- 检查几何有效性:面数据转换前先修复自相交、空几何、重复节点等问题。QGIS 可用“修复几何”,PostGIS 可检查 ST_IsValid。
- 整理字段:统一字段名、字段类型、日期格式和编码。转 Shapefile 时尤其要提前处理过长字段名。
- 设置目标格式参数:例如 GeoPackage 的图层名、GeoJSON 的坐标精度、GeoTIFF 的压缩方式和 NoData 值。
- 转换后抽样核对:检查要素数量、范围、字段数量、坐标系、面积统计和典型图斑位置。
如果使用命令行工具,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数据格式 后都建议先做一轮基础体检。
- 能否正常打开,图层数量是否符合交付说明。
- 坐标系是否明确,是否和项目底图、行政区或影像对齐。
- 要素数量是否和数据说明一致,是否存在空几何。
- 字段名、字段类型、中文编码是否正常。
- 空间范围是否异常,例如数据落到海上、赤道附近或坐标原点附近。
- 面积、长度、点位抽样是否符合业务常识。
- 目标软件或平台是否真正支持这种格式。
- 是否需要生成空间索引、影像金字塔或 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 加载慢等问题。
如果你只记一个原则:编辑和分析要稳定,发布和交换要轻量,归档和协作要可维护。围绕这个原则选择文件格式,比死记几十个后缀名更可靠。