gma 2 教程(二)数据操作:8.矢量操作

2023-10-28 09:10
文章标签 数据 教程 操作 矢量 gma

本文主要是介绍gma 2 教程(二)数据操作:8.矢量操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

安装 gma:pip install gma

矢量数据操作

打开矢量文件

gma打开各种矢量文件,返回一个矢量数据资源(DataSource)类。

查看矢量信息

打开的矢量数据资源(DataSource)类属性及示例如下表:

类属性说明示例返回值返回值类型
Driver驱动格式ESRI Shapefilestr
LayerCount图层数量1int
LayerNames图层名[‘ne_50m_admin_0_countries’]list
Metadata元数据{}dict

获取矢量图层

(一)方法简介

(二)示例 (获取第一个图层)

矢量图层

获取图层信息

矢量图层(Layer)包含的属性及示例结果如下表:

表 213 矢量图层(Layer)属性及示例

类属性说明示例返回值返回值类型
AttributeTable属性表DataFrame
Boundary四至边界范围 (左,下,右,上)(-180.0, -89.99892578125002, 180.0, 83.599609375)tuple
FeatureCount要素数量242int
FieldsInfo字段信息 (数据类型、精度、宽度等)DataFrame
GeomType几何类型Polygonstr
Metadata元数据{‘DBF_DATE_LAST_UPDATE’: ‘2022-05-08’}dict
Name图层名ne_50m_admin_0_countriesstr
Projection坐标系/投影(WKT格式)GEOGCS[“WGS 84”, DATUM[“WGS_1984”, SPHEROID [“WGS 84”, 6378137, 298.257223 563, AUTHORITY [“EPSG”, “7030”]], AUTHO RITY[“EPSG”, “6326”]], PRIMEM[“Green wich”, 0], UNIT[“degree”, 0.017453292 5199433, AUTHORITY[“EPSG”, “9122”]], AXIS ["Latitude ", NORTH], AXIS [“Longitude”, EAST], AUTHORITY [“EPSG”,“4326”]]str

重投影

(一)方法简介

(二)示例

简化图层

(一)方法简介

(二)示例

矢量类型转换

(一)方法简介

(二)示例

转为矢量数据资源

(一)方法简介

(二)示例

转为栅格数据集

(一)方法简介

(二)示例

另存为矢量文件

(一)方法简介

(二)示例*(另存为GPKG文件)*

获取矢量要素

(一)方法简介

(二)示例*(获取第一个要素)*

空间叠加分析

矢量图层叠加分析为多个图层之间进行叠加处理,得到目标叠加方法处理后的结果。gma矢量图层叠加分析主要包括:

叠加分析方法说明参数解释返回
Clip裁剪MLayer (另一个矢量图层)用第二个图层裁剪第一个图层矢量图层 (Layer)
Erase擦除MLayer (另一个矢量图层)用第二个图层裁剪第一个图层矢量图层 (Layer)
Intersection相交MLayer (另一个矢量图层)取两个图层的交集矢量图层 (Layer)
SymDifference交集取反MLayer (另一个矢量图层)取两个图层的反交集矢量图层 (Layer)
Union联合MLayer (另一个矢量图层)联合两个图层矢量图层 (Layer)
Update更新MLayer (另一个矢量图层)用第二个图层更新第一个图层矢量图层 (Layer)

(一)示例

(二)叠加分析结果示意图

示例绘图代码如下:

更新属性表

(一)方法简介

(二)示例


按字段名合并

(一)方法简介

(二)示例


筛选相交要素

(一)方法简介

(二)示例

矢量要素

获取要素信息

矢量要素(Feature)包含的属性及示例结果如下表:

类属性说明示例返回值返回值类型
Area几何多边形面积33.38935214042659float
Boundary四至边界范围 (左,下,右,上)(25.224023437500023, -22.40205078125001, 33.00673828125002, -15.64306640625)tuple
FID要素序号0int
Fields字段数据{‘LABELRANK’: 3, ‘SOVEREIGNT’: ‘Zimbabwe’, …}dict
FieldsInfo字段信息 (数据类型、精度、宽度等)DataFrame
GeomPoints几何坐标点[[[31.287890625000017, -22.40205078125001], [31.197265625, -22.34492187500001],…], …]list
GeometricCenter几何中心[29.640587660845583, -19.147785500919117]list
GeomType几何类型Polygonstr
GeometryCount几何体数量1int
Length几何体边线长度24.92604208613898float
Points2D展开到2维的几何坐标点[[31.287890625000017, -22.40205078125001], [31.197265625, -22.34492187500001], …], …]list
Projection坐标系/投影(WKT格式)GEOGCS[“WGS 84”, DATUM[“WGS_1984”, SPHEROID [“WGS 84”, 6378137, 298.257223 563, AUTHORITY [“EPSG”, “7030”]], AUTHO RITY[“EPSG”, “6326”]], PRIMEM[“Green wich”, 0], UNIT[“degree”, 0.017453292 5199433, AUTHORITY[“EPSG”, “9122”]], AXIS ["Latitude ", NORTH], AXIS [“Longitude”, EAST], AUTHORITY [“EPSG”,“4326”]]str

几何体导出

(一)方法简介

(二)示例

距离计算

(一)方法简介

(二)示例

重投影

(一)方法简介

(二)示例

简化要素

(一)方法简介

(二)示例

几何关系测试

矢量要素(Feature)包含的几何测试方法如下表:

几何测试方法说明参数示例示例结果返回值类型
TestContains包含关系测试MFeature (另一个矢量要素)Feature.TestContains(Feature2)Falsebool
TestIntersection相交测试MFeature (另一个矢量要素)bool Feature.TestIntersection(Feature2)Falsebool
TestOverlaps重叠测过MFeature (另一个矢量要素)Feature.TestOverlaps(Feature2)Falsebool
TestTouches接触测试MFeature (另一个矢量要素)Feature.TestTouches(Feature2)Falsebool
TestRing环形测试/Feature.TestRing()Truebool
TestValid有效性测试/Feature.TestValid()Truebool

转为矢量图层

(一)方法简介

(二)示例

空间叠加分析

与矢量图层叠加分析类似,矢量要素空间叠加为多个要素之间进行叠加处理,得到目标叠加方法处理后的结果。gma矢量要素叠加分析主要包括:

叠加分析方法说明参数解释返回
Distance差集MFeature (另一个矢量要素)用第二个要素裁剪第一个要素矢量要素 (Feature)
Intersection相交MFeature (另一个矢量要素)取两个要素的交集矢量要素 (Feature)
SymDifference交集取反MFeature (另一个矢量要素)取两个要素的反交集矢量要素 (Feature)
Union联合MFeature (另一个矢量要素)联合两个要素矢量要素 (Feature)

(一)示例

(二)叠加分析结果示意图

这篇关于gma 2 教程(二)数据操作:8.矢量操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/292209

相关文章

大数据小内存排序问题如何巧妙解决

《大数据小内存排序问题如何巧妙解决》文章介绍了大数据小内存排序的三种方法:数据库排序、分治法和位图法,数据库排序简单但速度慢,对设备要求高;分治法高效但实现复杂;位图法可读性差,但存储空间受限... 目录三种方法:方法概要数据库排序(http://www.chinasem.cn对数据库设备要求较高)分治法(常

Python将大量遥感数据的值缩放指定倍数的方法(推荐)

《Python将大量遥感数据的值缩放指定倍数的方法(推荐)》本文介绍基于Python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处理,并将所得处理后数据保存为新的遥感影像... 本文介绍基于python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处

Window Server创建2台服务器的故障转移群集的图文教程

《WindowServer创建2台服务器的故障转移群集的图文教程》本文主要介绍了在WindowsServer系统上创建一个包含两台成员服务器的故障转移群集,文中通过图文示例介绍的非常详细,对大家的... 目录一、 准备条件二、在ServerB安装故障转移群集三、在ServerC安装故障转移群集,操作与Ser

使用MongoDB进行数据存储的操作流程

《使用MongoDB进行数据存储的操作流程》在现代应用开发中,数据存储是一个至关重要的部分,随着数据量的增大和复杂性的增加,传统的关系型数据库有时难以应对高并发和大数据量的处理需求,MongoDB作为... 目录什么是MongoDB?MongoDB的优势使用MongoDB进行数据存储1. 安装MongoDB

Linux使用fdisk进行磁盘的相关操作

《Linux使用fdisk进行磁盘的相关操作》fdisk命令是Linux中用于管理磁盘分区的强大文本实用程序,这篇文章主要为大家详细介绍了如何使用fdisk进行磁盘的相关操作,需要的可以了解下... 目录简介基本语法示例用法列出所有分区查看指定磁盘的区分管理指定的磁盘进入交互式模式创建一个新的分区删除一个存

windos server2022的配置故障转移服务的图文教程

《windosserver2022的配置故障转移服务的图文教程》本文主要介绍了windosserver2022的配置故障转移服务的图文教程,以确保服务和应用程序的连续性和可用性,文中通过图文介绍的非... 目录准备环境:步骤故障转移群集是 Windows Server 2022 中提供的一种功能,用于在多个

Golang操作DuckDB实战案例分享

《Golang操作DuckDB实战案例分享》DuckDB是一个嵌入式SQL数据库引擎,它与众所周知的SQLite非常相似,但它是为olap风格的工作负载设计的,DuckDB支持各种数据类型和SQL特性... 目录DuckDB的主要优点环境准备初始化表和数据查询单行或多行错误处理和事务完整代码最后总结Duck

Python MySQL如何通过Binlog获取变更记录恢复数据

《PythonMySQL如何通过Binlog获取变更记录恢复数据》本文介绍了如何使用Python和pymysqlreplication库通过MySQL的二进制日志(Binlog)获取数据库的变更记录... 目录python mysql通过Binlog获取变更记录恢复数据1.安装pymysqlreplicat

Linux使用dd命令来复制和转换数据的操作方法

《Linux使用dd命令来复制和转换数据的操作方法》Linux中的dd命令是一个功能强大的数据复制和转换实用程序,它以较低级别运行,通常用于创建可启动的USB驱动器、克隆磁盘和生成随机数据等任务,本文... 目录简介功能和能力语法常用选项示例用法基础用法创建可启动www.chinasem.cn的 USB 驱动

C# 读写ini文件操作实现

《C#读写ini文件操作实现》本文主要介绍了C#读写ini文件操作实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录一、INI文件结构二、读取INI文件中的数据在C#应用程序中,常将INI文件作为配置文件,用于存储应用程序的