查看原文
其他

GIS的多源异构数据转换

张金龙1992 地质掘墓人 2022-12-04

本篇文章介绍数据转换

项目开展过程中会收集各行各业的数据

这些五花八门的数据需要归一化处理

此时会涉及到多源异构数据转换

多源异构数据转换是个复杂的事

它不仅包括软件操作

也有数据格式类型甚至行业背景知识

这也是各大软件的核心内容

近几年我从事软件数据研究

总结出一些认识和操作分享给大家


本篇文章从数据应用的角度

以GIS业务平台为核心

通过导入其他数据并加工整理

达到最终成果表达目的

下面将整个数据流做成一张图

全文围绕这些内容展开


一.常用GIS软件

GIS软件按用户规模大小简单介绍

①ArcGIS

ArcGIS是美国ESRI开发的GIS产品

在全球应用最多也最广

也是我国GIS行业的常用软件

②MapGIS

是由我国中地数码开发GIS

目前在地质行业中占统治地位

③DGSS

是地调局为数字地质调查工作开发的专业软件

主要用户群体为局系统单位


(一)常用GIS软件升级转换

首先介绍这三类软件本身的数据升级

随着信息技术与行业应用的发展

GIS公司原有架构不再适用,需要更新换代

软件版本升级有个基础认知

所有更新换代都是向下兼容的

(可以不支持别家的数据,但是自家数据还是要用的)

换句话说就是最新升级的软件

可以打开以前的文件

在GIS行业中的体现较为特殊

需要用自家工具进行转换


1.Arcgis文件升级

ArcGIS从1978年Arc/Info

到现在ArcGIS Pro

经历几次大版本更新

每次更新也伴随着数据的升级(下图)


(1)ArcInfo文件升级

早期文件EOO

Arcgis平台无法直接打开,需要转换

方法:应用Import from E00工具

详细操作步骤如下



(2)shp转Arcgis数据库

shp可以说是Arcgis的经典文件

现在已经过时,同样需要更新

方法:直接在数据库上右键操作

选择导入功能(图1)或者先打开shp

然后另存到数据库中(图2)

1导入功能2另存功能


(3)Arcgis Pro打开Arcgis文件

ArcgisPro是ESRI公司的未来

还没有使用的小伙伴要抓紧时间学习使用

点击蓝色链接下载ArcgisPro

讲转换之前先强调一个重要认知

以前的Arcgis是以文档mdx为核心

例如当我们新建任务时

提示的是“新建文档”(图1)

而Arcgis Pro是以工程为核心

我们新建任务时

提示的是“新建工程”(图2)

不要小看这两个提示

这是一个质的变化

为加深大家的印象

下面把二者实体文件截图作以说明

Arcgis文档包括的实体文件

有数据库/shp和mdx文档(图3)

Arcgis Pro工程包括的实体文件

有数据库、aprx文档、工具箱等(图4)

1Arcgis新建文档2Arcgis Pro新建工程

3Arcgis文件实体
4Arcgis Pro文件实体

关于Arcgis Pro打开Arcgis文件

方法:可以从菜单的地图选项卡

添加shp或者数据库文件(图1)

也可以从插入选项卡选择导入.mdx文件(图2)

1添加shp等
2插入mdx文档


当然二者也可以通过地图包实现数据转换

这有个什么应用呢

比如Arcgis Pro是不支持mdb数据库

Pro它根本打不开mdb

此时如果共享成mpk地图包,既可解决问题


2.Mapgis文件升级转换

都说Mapgis模仿Arcgis

事实上并不是国外的月亮圆

Mapgis也紧随计算机技术发展

它的传统文件数据也升级到数据库概念

Mapgis文件发展过程如下

同样加深大家印象

做Mapgis实体文件截图详细说明

Mapgis6.7实体文件是由点线面加文档组织的(图1)

属于典型的文档关联点线面文件

Mapgisk9-10x实体文件.hdf数据库和文档(图2)

类似于Arcgis.gdb

文档储存样式格式而数据库则储存实体数据

1Mapgis6.7实体文件2Mapgisk9-10x实体文件

Mapgis10应用以前的数据

需要做数据升级,方法如下图


3.DGSS文件升级转换

官方说法DGSS于2014年开始升级

真正推广使用应该是在三年前

下图介绍DGSS版本更新及文件升级

DGSS是地调局发展研究中心

基于Mapgis67开发的系统

故而早期版本的数据

和转换操作都和Mapgis67一致(图1)

而最新版本为适应移动端

开发成特有的数据格式点线面双文件(图2)

1DGSS14年前实体文件2DGSS最新实体文件



(二)Arcgis与mapgis文件转换

为什么讲Arcgis强大

因为它的用户群体大功能需求也大

各种功能丰富,其中就包括数据转换

ESRI之所以能与其他公司产品进行文件转换

是因为有shp文件的存在

它在GIS行业有着极其重要的作用

下面与Arcgis相关的转换都会涉及到shp文件


1.mapgis转Arcgis

网上有很多关于Arcgis与mapgis文件互转教程

例如直接用Mapgis6.7自身的转换模块实现(图1)

我实际操作过

经常会出现丢失属性或者属性乱码的现象

之前写过一篇文章讲过处理方法(图2)

1mapgis转Arcgis2解决办法


也可以用专用的转换软件Map2Shp

它是一款将中地公司MapGis图形文件

转换为ESRI公司Shape格式的转换工具

转换结果较完美,但是软件需要付费

我这有破解的,有需要的找我

1Map2Shp界面2Map2Shp破解


最近又发现一个更好用的办法

直接用section实现mapgis和Arcgis的相互转换

经多次实践对比

该方法既不会丢失属性也不会丢坐标系

方法:打开section1辅助工具菜单

选择数据格式交换,选择保存SHP文件

需要说明的是

以上操作需要在最新版的section运行

单击下面蓝色链接获取

Section2021V5.6.5


2.Arcgis转mapgis

传统方法:

用mapgis67文件转换模块(图1)

装入shape文件即可(图2)

但也会出现乱码丢属性丢坐标系现象

1打开文件转换模块
2选择装入shape

当然简单操作同样可以用section

方法参照mapgis转Arcgis


(三)Arcgis与DGSS文件转换

1.DGSS转Arcgis

方法:选择DGSGIS矢量文件转shp(单文件转换)

或者选择DGSGIS文件按目录转(批量转换)

注:有时候会出现转换不成功现象

这个属于“玄学”了

建议两个功能换着用

多试肯定能转换成功的

1打开数据转换工具
2选择转换功能


2.Arcgis转DGSS

Arcgis与DGSS互相转换可以参考上图

也可以使用DGSGIS软件(图1、2)

还可以使用数字综合调查系统(图3、4)

1地质调查GIS平台‍2选择shp文件

3数字综合平台4选择shp文件

以前写过一个示例,这里再次贴出

从国家基础地理信息中心下载的行政点位图层

Arcgis格式,需要转成DGSS格式

转换没问题,重要的是主要参数调整

详细步骤如下

1给图层做投影变换(图1)

2修改地图参数步骤如下图(图2)

1修改投影变化步骤2修改地图参数步骤


(四)mapgis与DGSS文件转换

mapgis与DGSS这两类文件相互转换也比较常用

上文说了DGSS是基于Mapgis开发的

所有这类转换比较容易

需要强调的是得把Mapgis67狗打开


1.DGSS转mapgis

方法有三个分别为

转换文件、转换工程、转换目录(图1)

2.mapgis转DGSS

方法四个分别是

转换mapgis矢量文件(单文件转换)

转换mapgis影像文件(msi转tif)

转换mapgis工程(已保存成工程的)

转换mapgis储存目录(所有文件)

用DGSGIS转换工具总会出现问题

实属玄学,无解,建议多试

1DGSS转mapgis2mapgis转DGSS





二.其他数据

这部分介绍常用的文本

或者其他行业数据转成GIS文件

也就是下图④⑤⑥转①②③



(一)其他数据导入Arcgis

Arcgis支持多种数据导入

其中有Excel\JSON\GPS\KML\WFS等(图1)

1.excel的XY数据导入

首先介绍最常用的

txt/excel数添加到Arcgis

示例1添加XX/YY数据

方法:文件--添加数据--添加XY数据(图2)

1Arcgis数据类型2添加XY数据

首先明确数据源的输入

我需要导入的数据是

高斯克吕格6度分带X/Y投影坐标

其中XX6位、YY7位(图1)

也可以是XX8位、YY7位(图2)

区别在于后者有代号

添加数据时,选择对应的X/Y字段

一定一定要注意选择正确的坐标系

不同的X/Y坐标对应不同的坐标系

如图1坐标对用图3坐标系

高斯克吕格6度分带,无代号

图2坐标对应图4的坐标系

高斯克吕格6度分带,20度带

1XX6位、YY7位2XX8位、YY7位
3无代号
4有代号


为什么同样的点

有代号之分,导入的方法也不同

其实这就是坐标系的问题

在我们导入其他数据源时

坐标系选择是最容易出现问题的地方

如需地图投影知识点击下面蓝色链接

信息化项目示例-关于地图理论知识及坐标转换等操作问题


示例导入excel坐标方法如下


2.excel的经纬度数据导入

经纬度字段必须为数值型

如果字段不是数值

必须以以度、分和秒的十进制形式存储



(二)其他数据导入Mapgis

1.txt转Mapgis67

批量数据导入Mapgis67文件

建议把数据放到文本文件中

应用Mapgis67自身投影转换功能实现

方法:打开Mapgis67投影变换模块

选择P投影菜单,选择U用户文件投影

详细操作见下图

同样需要注意三点

第一源坐标系与目的坐标系

第二数据源是地理坐标还是投影坐标

第三待转换数据是2000坐标系

mapgis67需要手动添加2000坐标系的椭球参数

添加方法以前以讲过,截图如下



2.txt转Mapgis10

方法:

在右侧目录下的简单要素类导入其他数据

然后在左上角选择添加数据

可以添加txt/e00/shp/dxf/kml等格式

详细操作见下图




3.excel转Mapgis67

这个需求推荐使用section

方法:选择菜单辅助工具1

选择表格数据投影

详细操作见下图


4.cad转Mapgis67

同样推荐使用section

方法:新建文件

注意是第二个按钮“新建文件”

不是第一个“新建工程”

然后选择1辅助工具

这次菜单才会出现读取dxf等功能

详细操作如下图所有









三.平面设计

用GIS平台做数据产品

做成数据库是一个重要应用

实际工作中更多是做成

可视化的图形或者打印成册

这时候就需要用平面设计软件进一步加工整理

谈到平面设计软件

和GIS结合比较好的有PDF/Ai/CorelDRAW等

也就是下图①②③转⑦⑧⑨⑩


(一)Arcgis导出地图格式

Arcgis可以导出的地图格式有(图2)

EMF\EPS\AI\PDF\SVG\BMP\JPEG\PNG\TIFF\GIF

下面逐一介绍下

前5个矢量格式,放大不失真

其中EMF主要用于Windows系统的印刷应用

EPS是一种ASCII图片文件格式

以前常用于PostScript图形打印机

AI是Adobe公司平面设计软件格式

用Adobe illustrator软件打开

PDF为可携带文档格式

由于它保留原稿的每一个字符、颜色以及图象

用于打印或文件传送首先格式

SVG是可缩放的矢量图形,主要在网页应用

后5个为栅格数据

先谈下导出栅格数据的特点

GIS导出的图件大部分都是这类数据

栅格数据也可以理解成照片格式

几乎所有软件都支持浏览打印

JPEG是最常用的照片格式

支持最高级别的压缩,所占内存较小

TIFF是标签图像文件格式

可以储存空间位置信息,所占内存大

上面两种格式是GIS平台最常用导出的格式

PNG位图格式,支持透明

广泛应用于网络、图标

GIF是动图,本篇文章里的

所有动态操作图都是这种格式

后面5中栅格数据,不便于二次编辑

如果进一步编辑的做图的话

就需要用平面设计软件实现


大家都会导出普通图片,故本文不做演示

本章节重点是导出矢量数据

下文介绍导出操作以及注意事项


1.Arcgis导出AI格式

先说下AI格式

AI素材可以用于印刷出版、海报书籍排版

专业插画、多媒体图像处理和互联网页面的制作等

应用极其广泛

我们做项目时,经常会有做图集任务

用Arcgis做图集时建议使用AI格式

方法:Arcgis数据视图或布局视图下

选择文件,选择导出地图(图1)

选择AI(.ai)

然后Adobeillustrator打开编辑(图2)

1Arcgis导出文件2AI打开


2.Arcgis导出svg格式

没有AI软件或者不太精通这个软件

还可以用CorelDRAW打开

方法:选择导出svg格式(图1)

其实矢量软件都可以用CorelDRAW和AI编辑(图2)

1Arcgis导出svg2CorelDRAW打开


3.Arcgis导出office格式

offce软件支持矢量编辑

这为在PPT做地图设计提供了可能

当然你也可以用插件Arcgis for office

方法:通过Ai实现

在Ai平台复制,在ppt里粘贴

然后单击图形,右键选择组合,取消组合

详细操作如下图

注意该功能必须在

AdobeillustratorC6版本以上

单击蓝色链接可获取




(二)Mapgis导出地图格式

1.Mapgis67导出eps格式

必须用Mapgis67本身功能,section没有

方法:打开Mapgis67编辑子系统

选择工程输出(图1)

然后选择PostScrip输出

建议选择文字按编码方式输出(图2)

这样导出的文本数据

可以用其他软件再编辑

1工程输出2文字按编码方式输出

需要注意的是

有时候Mapgis67不能导出eps格

这是因为系统库缺少两个文件(图1)

MapGis系统库资源

这篇文章随便在一个系统库即可(图2)

1系统库关键文件2MapGis系统库资源



2.Mapgis10导出ps格式

以前做图册项目时候经常用的

Mapgis10转矢量数据

导出ps格式后在用AI打开

方法:在Mapgis10的版面视图中

选择菜单栏最下面第5个按钮(图1)

同样可以导出eps等矢量格式

进而在CorelDRAW/AI/PPT中再编辑(图2)

1Mapgis10导出ps2CorelDRAW打开





四、检查转换数据

上文介绍数据转换操作和注意事项

下面讲解如何检查数据是否转换成功

可以关注以下三点

第一空间位置

图形是否在正确位置上

也就是坐标系是否正确转换

检查方法:叠加已知正确数据

例如先通过Arcgis打开全国省份图

然后添加转换后的图形数据

通过动态投影确定转换是否正确

Mapgis67没有动态投影功能

可以通过提前加载正确图框

然后1:1观察是否转换成功


第二空间数据图形

检查图形有没有缺失,有没有面积上的变化

检查方法:计算面积或拓扑检查

最好用拓扑,但是有些数据不支持拓扑(shp)

也可以通过对比转换前后面积

来检查是否转换成功


第三空间数据属性

检查有没有属性乱码缺失等

检查方法:打开属性表,浏览字段位数属性


最后总结

全文介绍多源异构数据转换

以及需要注意的事项

大家实际工作中会遇到各种各样的问题

遇到转换失败时不要慌

如果多源异构数据转换出现问题的话

大家首先要想到的是不是坐标系问题

解决这个事情,剩下的都好办

再有问题多在网上寻找答案

多经历一些失败有助于提高对软件和数据本身的理解


做个预告

本文讲常用的GIS的多源异构转换

关于多源异构数据转换有个极其强大的软件

FME

可以说它是GIS数据转换平台

集空间数据与非空间数据

加载、转换、集成、导出、共享

支持超过300多种数据格式

能实现100多种数据格式(模型)的相互转换

后面有时间单独成文介绍



注本文所有实验素材已脱密处理

图框坐标或坐标属性值仅做代号显示


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存