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

相关文章

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

Elasticsearch 在 Java 中的使用教程

《Elasticsearch在Java中的使用教程》Elasticsearch是一个分布式搜索和分析引擎,基于ApacheLucene构建,能够实现实时数据的存储、搜索、和分析,它广泛应用于全文... 目录1. Elasticsearch 简介2. 环境准备2.1 安装 Elasticsearch2.2 J

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

Mysql表的简单操作(基本技能)

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看... 目录3.1 创建表 3.2 查看表结构3.3 修改表3.4 实践案例:修改表在数据库中,表的操作主要

C# WinForms存储过程操作数据库的实例讲解

《C#WinForms存储过程操作数据库的实例讲解》:本文主要介绍C#WinForms存储过程操作数据库的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、存储过程基础二、C# 调用流程1. 数据库连接配置2. 执行存储过程(增删改)3. 查询数据三、事务处

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

springboot简单集成Security配置的教程

《springboot简单集成Security配置的教程》:本文主要介绍springboot简单集成Security配置的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录集成Security安全框架引入依赖编写配置类WebSecurityConfig(自定义资源权限规则

MySQL大表数据的分区与分库分表的实现

《MySQL大表数据的分区与分库分表的实现》数据库的分区和分库分表是两种常用的技术方案,本文主要介绍了MySQL大表数据的分区与分库分表的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有... 目录1. mysql大表数据的分区1.1 什么是分区?1.2 分区的类型1.3 分区的优点1.4 分