多个点坐标存储在str中,如何转换成LineString?

多个点坐标存储在str中,如何转换成LineString?

思路:
1.str转换成list
2.经度、维度转换成float
3.构建元祖,添加到一个空list(line_list)
4.最后直接通过LineString构建

数据如下

from shapely.geometry import LineString

tmp = '114.185246,30.523517;114.18529,30.52349;114.185478,30.523372;114.185698,30.523238;114.186717,30.522626;114.187774,30.521971;114.188412,30.521553;114.189003,30.521199;114.189475,30.520888;114.189748,30.520716;114.190022,30.520534'
def turn_to_linestring(x):
    line = LineString()
    line_list = []
    for i in x.split(';'):
        lng = float(i.split(',')[0])
        lat = float(i.split(',')[1])
        point_tuple = (lng,lat)  #构建元祖
        line_list.append(point_tuple)
    linestring = LineString(line_list)
    return linestring
turn_to_linestring(tmp)

结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值