当前位置: 首页 >科技 > 内容

🌍✨Python+GDAL:轻松生成.shp文件🌍✨

科技
导读 在地理信息处理中,`.shp` 文件(Shapefile)是常见的数据格式之一。借助 Python 和 GDAL 库,我们可以高效地创建这类文件!🚀首先,...

在地理信息处理中,`.shp` 文件(Shapefile)是常见的数据格式之一。借助 Python 和 GDAL 库,我们可以高效地创建这类文件!🚀

首先,确保安装了 `gdal` 和 `osgeo` 库。如果尚未安装,可以运行以下命令:

```bash

pip install gdal osgeo

```

接下来,让我们快速上手一个简单的例子!假设我们要生成一个包含多边形的 Shapefile 文件。代码如下:

```python

from osgeo import ogr

创建驱动器

driver = ogr.GetDriverByName('ESRI Shapefile')

ds = driver.CreateDataSource('output.shp')

定义空间参考系统

srs = ogr.osr.SpatialReference()

srs.ImportFromEPSG(4326) 使用 WGS84 坐标系

创建图层

layer = ds.CreateLayer('polygon_layer', srs, ogr.wkbPolygon)

添加字段

field_defn = ogr.FieldDefn('Name', ogr.OFTString)

field_defn.SetWidth(32)

layer.CreateField(field_defn)

创建几何对象

feat = ogr.Feature(layer.GetLayerDefn())

geom = ogr.Geometry(ogr.wkbPolygon)

ring = ogr.Geometry(ogr.wkbLinearRing)

设置坐标点

ring.AddPoint(116.3, 39.9)

ring.AddPoint(116.4, 39.9)

ring.AddPoint(116.4, 40.0)

ring.AddPoint(116.3, 40.0)

ring.CloseRings()

geom.AddGeometry(ring)

feat.SetGeometry(geom)

feat.SetField('Name', 'MyPolygon')

layer.CreateFeature(feat)

清理资源

feat.Destroy()

ds.Destroy()

```

通过这段代码,我们成功生成了一个名为 `output.shp` 的 Shapefile 文件,并包含一个简单的矩形多边形。💡

无论是用于数据分析还是地图可视化,掌握这项技能都能让工作事半功倍!快试试吧!💫

免责声明:本文由用户上传,如有侵权请联系删除!