geopandas 读取KML文件并转换为shapefile

本文介绍了如何使用Python的geopandas和fiona库将KML格式的地理信息数据转换为SHP格式,以便在ArcGIS中处理。步骤包括导入库、读取KML文件、检查数据并最终保存为SHP文件,确保汉字属性正确编码。
摘要由CSDN通过智能技术生成

笔者在google earth 上获取了一系列kml格式的样本点,需要将其转换为shp格式,在arcgis中打开并以图层形式加载近来。

解决方法:


第一步:

导入geopandas和fiona这两个包,如果没有geopandas这个库,需要事先下载,通过:

pip install geopandas

下载好这个库,然后:

激活KML文件读取格式:

fiona.drvsupport.supported_drivers['KML'] = 'rw'

'rw'表示读写格式


第二步:

通过geopandas读取目标kml文件;

# 读取KML文件
kml_file = './your/path/name.kml'
gdf = gpd.read_file(kml_file, driver='KML')

# 检查数据
print(gdf.head())

第三步:

通过gpd.to_file转换格式

# 保存为SHP文件
shp_file = './your/out/path.shp'
gdf.to_file(shp_file, encoding='utf-8')

用'utf-8'格式编码,可以避免属性表中汉字乱码

全部代码如下:

import geopandas as gpd
import fiona
fiona.drvsupport.supported_drivers['KML'] = 'rw'

# 读取KML文件
kml_file = './your/input/name.kml'
gdf = gpd.read_file(kml_file, driver='KML')

# 检查数据
print(gdf.head())

# 保存为SHP文件
shp_file = './your/output/name.shp'
gdf.to_file(shp_file, encoding='utf-8')

  • 12
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值