DataWhale组队学习打卡第一阶段内容
本学习笔记为Datawhale开源学习训练营21年4月数据挖掘学习的学习内容,学习链接为:团队学习数据挖掘/智慧海洋
所在学习小组:梅利号
shapely库的学习记录:
准备工作
from shapely import geometry as geo
from shapley import wkt
from shapley import ops
import numpy as np
shapely几何对象的创建及可视化
- 创建的几何对象可以为Point(点)、LineString(线)、Polygon(面)等
Point
- 创建Point对象
#创建Point对象
point_1=geo.Point(1,2)
print(point_1) #输出:POINT (1 2)
point_2=geo.Point((3,4))
print(point_2) #输出:POINT (3 4)
point_3=geo.Point(np.array([4,5]))
print(point_3) #输出:POINT (4 5)
point_4=wkt.loads("POINT(5 6)")
print(point_4) #输出:POINT (5 6)
- 批量可视化
#批量可视化
geo.GeometryCollection([point_1,point_2,point_3,point_4])
- 输出点的属性(x、y、z、点坐标)
#输出点的属性(x、y、点坐标)
print(point_1.x) #输出(point_1的x坐标):1.0
print(point_1.y) #输出(point_1的y坐标):2.0
print(list(point_1.coords)) #输出包含point_1坐标的列表:[(1.0, 2.0)]
- 将Point重新转换为numpy.array对象
#将point_3重新转换为numpy.array对象
array_3=np.array(point_3)
print(array_3) #输出:[4. 5.]
- 点对象的属性
#点的面积和长度属性都为0
point_1.area #0.0
point_1.length #0.0
#点的边界是均为0的元组
point_1.bounds #(0.0, 0.0, 0.0, 0.0)
#坐标可以被切片
point_1.coords[:] #[(1.0,2.0)]
#Point构造函数还能接受另一个Point实例,从而生成一个副本
geo.Point(point_1)
- 点对象的常用方法
d=point_2.distance(point_4) #d为点2和点4之间的点间距
print(d)
LineString
LineString构造函数用2个或者更多(x,y[,z])点元组的有序序列
构造出来的LineString对象表示点之间的一个或者多个连接的线性样条曲线。可以按照顺序重复点,但可能导致性能损失,应尽量避免。线迹可以交叉。
- LineString