arcgis创建shp
时间: 2025-01-03 16:33:53 浏览: 18
### 如何在 ArcGIS 中创建 SHP 文件
#### 准备工作
为了顺利创建一个新的 Shapefile (SHP),需要先准备好存储位置并设置好环境。这可以通过打开 **目录窗口** 并添加文件夹链接来完成,以便能够访问目标文件夹[^3]。
#### 创建新的 SHP 要素文件
当准备就绪之后,在选定的文件夹上点击鼠标右键选择 `新建` -> `Shapefile` 来启动创建过程。此时会出现对话框提示输入名称以及选择要素类型(例如点、线或多边形),并且可以在此阶段定义坐标系统[^2]。
#### 设置坐标系
对于新建立的 SHP 文件来说,正确设定其使用的空间参考即坐标系是非常重要的一步。如果不确定应该选用哪一个,则可以根据实际地理范围或是参照已有的地图数据来进行决定。一旦选择了合适的投影方式,后续的数据处理将会更加精确有效。
#### 完成创建与验证
确认上述选项无误后点击确定按钮即可成功生成所需的 SHP 文件,并自动加载至当前的地图视图当中供进一步操作使用。值得注意的是,确保 PRJ 文件是以 ASCII 编码保存,这样才能被 ARCGIS 正确解析[^4]。
```python
import osgeo.ogr as ogr
driver = ogr.GetDriverByName('ESRI Shapefile')
data_source = driver.CreateDataSource('./new_shapefile.shp')
spatial_reference = ogr.osr.SpatialReference()
spatial_reference.ImportFromEPSG(4326)
layer = data_source.CreateLayer("test", spatial_reference, geom_type=ogr.wkbPolygon)
feature_definition = layer.GetLayerDefn()
# Create a new feature (attribute and geometry)
feature = ogr.Feature(feature_definition)
ring = ogr.Geometry(ogr.wkbLinearRing)
ring.AddPoint(-117.18, 32.72)
ring.AddPoint(-117.19, 32.73)
ring.AddPoint(-117.20, 32.74)
poly = ogr.Geometry(ogr.wkbPolygon)
poly.AddGeometry(ring)
feature.SetGeometry(poly)
layer.CreateFeature(feature)
feature.Destroy()
data_source.Destroy()
```
阅读全文