当前位置: 首页 > news >正文

geopandas 笔记:geometry上的操作汇总

如无特殊说明,数据主要来自:GeoDataFrame 应用:公园分布映射至subzone_UQI-LIUWJ的博客-CSDN博客

0 读入数据

subzone = gpd.read_file('ura-mp19-subzone-no-sea-pl.geojson')
subzone

subzone_tst=subzone[0:5]
subzone_tst

subzone_tst.plot()

 

1 area 计算面积

subzone_tst.area
'''
0    0.000036
1    0.000033
2    0.000048
3    0.000003
4    0.000015
dtype: float64
'''

2 boundary 边界

subzone_tst.boundary
'''
0    LINESTRING Z (103.81454 1.28239 0.00000, 103.8...
1    LINESTRING Z (103.82209 1.28049 0.00000, 103.8...
2    LINESTRING Z (103.84375 1.28508 0.00000, 103.8...
3    LINESTRING Z (103.84962 1.28412 0.00000, 103.8...
4    LINESTRING Z (103.85253 1.28617 0.00000, 103.8...
dtype: geometry
'''subzone_tst.boundary.plot()

3 centroid 中心点

subzone_tst.centroid
'''
0    POINT (103.80856 1.28222)
1    POINT (103.81859 1.28201)
2    POINT (103.84369 1.27997)
3    POINT (103.84865 1.28528)
4    POINT (103.85101 1.28372)
dtype: geometry
'''
ax=subzone_tst.plot()
subzone_tst.centroid.plot(ax=ax,color='red')

4 convex_hull 凸包

subzone_tst.convex_hull
'''
0    POLYGON Z ((103.81749 1.28004 0.00000, 103.813...
1    POLYGON Z ((103.82153 1.27882 0.00000, 103.821...
2    POLYGON Z ((103.84137 1.27415 0.00000, 103.841...
3    POLYGON Z ((103.84955 1.28391 0.00000, 103.847...
4    POLYGON Z ((103.85108 1.28077 0.00000, 103.849...
dtype: geometry
'''ax=subzone_tst.convex_hull.plot()
subzone_tst.plot(ax=ax,color='red',alpha=0.2)

5 envelope 最小旋转矩形

subzone_tst.envelope
'''
0    POLYGON ((103.80126 1.28004, 103.81774 1.28004...
1    POLYGON ((103.81306 1.27882, 103.82372 1.27882...
2    POLYGON ((103.83960 1.27415, 103.84919 1.27415...
3    POLYGON ((103.84718 1.28391, 103.84995 1.28391...
4    POLYGON ((103.84852 1.28077, 103.85321 1.28077...
dtype: geometry
'''ax=subzone_tst.envelope.plot()
subzone_tst.plot(ax=ax,color='red',alpha=0.2)

6 buffer 缓冲区

ax=subzone_tst.buffer(0.01,0.05).plot()
subzone_tst.plot(ax=ax,color='red',alpha=0.2)

7 intersects 是否与另一个几何形状相交

subzone_tst.intersects(subzone.at[5,'geometry'])
'''
0    False
1    False
2     True
3     True
4     True
dtype: bool
'''
ax=subzone_tst.plot(figsize=(10,7))
subzone_tst.boundary.plot(ax=ax,color='black')
gpd.GeoSeries(subzone.loc[5,'geometry']).plot(ax=ax,color='red',alpha=0.4)

8 contains  是否包含另一个几何形状

subzone_tst.contains(subzone.at[5,'geometry'])
'''
0    False
1    False
2    False
3    False
4    False
dtype: bool
'''

9 crosses 是否与另一个几何形状交叉

subzone_tst.crosses(subzone.at[5,'geometry'])
'''
0    False
1    False
2    False
3    False
4    False
dtype: bool
'''

9.1 crosses和intersects的区别

  •  intersects
    • 如果两个几何形状共享任何点、边或面,则它们相交
  • crosses
    • crosses 描述了一个几何形状与另一个不同维度的几何形状之间的关系
    • 如果一个几何形状(线或多边形)穿越另一个几何形状,但不完全包含在其中,那么它们就交叉

10 distance 距离

subzone_tst.distance(subzone.at[5,'geometry'])
'''
0    0.026645
1    0.020509
2    0.000000
3    0.000000
4    0.000000
dtype: float64
'''

11 union 并集

subzone_tst.union(subzone)
'''
0      POLYGON Z ((103.81774 1.28043 0.00000, 103.817...
1      POLYGON Z ((103.82210 1.28011 0.00000, 103.822...
2      POLYGON Z ((103.84400 1.28491 0.00000, 103.844...
3      POLYGON Z ((103.84955 1.28391 0.00000, 103.849...
4      POLYGON Z ((103.85253 1.28615 0.00000, 103.852......                        
327                                                 None
328                                                 None
329                                                 None
330                                                 None
331                                                 None
Length: 332, dtype: geometry
'''

12 unary_union

合并所有几何形状为一个单一的几何形状

gpd.GeoSeries(subzone_tst.unary_union)
'''
0    MULTIPOLYGON Z (((103.84418 1.28480 0.00000, 1...
dtype: geometry
'''

http://www.lryc.cn/news/159802.html

相关文章:

  • 【MongoDB】Ubuntu22.04 下安装 MongoDB | 用户权限认证 | skynet.db.mongo 模块使用
  • Python对象序列化
  • jmeter 准确的吞吐量定时器 Precise Throughput Timer
  • 后端/DFT/ATPG/PCB/SignOff设计常用工具/操作/流程及一些文件类型
  • jvm 程序计算器 程序计数器是否溢出 程序计数器是做什么的 java程序计数器会内存溢出吗 程序计数器作用与用处 jvm内存模型 jvm合集(一)
  • 关于近期小程序测试的常见漏洞演示
  • 磐基2.0部署apisix集群
  • Python requests爬虫豆瓣图片返回数据为空。
  • 【Spring事务的实现原理】
  • 摆动输入连杆夹持机构
  • C++——类与对象(下篇)
  • stm32 freeRTOS lwip TCP快速发送,内存泄露问题
  • Ei、Scopus双检索 | 2024年第三届人工智能与机器学习前沿国际会议(FAIML 2024)
  • win10环境下搭建QT+opencv
  • React16、18 使用 Redux
  • 【Python】Python运算符/部分函数对应的双下划线魔法方法
  • Macs Fan Control 1.5.16 Pro for mac风扇调节软件
  • 某技术公司技术二面面试题总结
  • 初试小程序轮播组件
  • Centos7 Yum安装PHP7.2
  • 2020年09月 C/C++(三级)真题解析#中国电子学会#全国青少年软件编程等级考试
  • 30天入门Python(基础篇)——第2天:Python安装(保姆级)与IDE的认识与选择+详细安装教程
  • 软件测试/测试开发丨ChatGPT:带你进入智能对话的新时代
  • logback/log4j基本配置和标签详解
  • 雅思 《九分达人》阅读练习(二)
  • [论文笔记] Gunrock: A High-Performance Graph Processing Library on the GPU
  • A Guide to PriorityQueue
  • Jenkins教程—构建多分支流水线项目
  • 【vxe-table】@enter.keyup.native实现在列表中回车光标向右移动聚焦及vxe-table的一些方法的使用(具体实现+踩坑篇)
  • 科技资讯|苹果Vision Pro获得被动冷却系统及数字表冠控制界面专利