Python 根据数据模板创建shapefile的实现


Posted in Python onNovember 26, 2019

废话不多说,我就直接上代码让大家看看吧!

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @File : copyShapefile.py
# @Author: huifer
# @Date : 2018-4-28
from os.path import exists

import gdal

from osgeo import ogr
from os import remove

gdal.SetConfigOption("GDAL_FILENAME_IS_UTF8", "YES") # 路径中文
gdal.SetConfigOption("SHAPE_ENCODING", "GBK") # 属性中文
in_shapefile = "dataSample/wang_point.shp"# 数据模板
out_shapefile = "shapefileAa.shp" # 输出数据集
in_ds = ogr.Open(in_shapefile) # 读取模板数据
in_lyr = in_ds.GetLayerByIndex(0)
if exists(out_shapefile):
  remove(out_shapefile)
drv = ogr.GetDriverByName("ESRI Shapefile") # 指定数据驱动
out_ds = drv.CreateDataSource(out_shapefile) # 创建数据源
proj = in_lyr.GetSpatialRef() # 获取模板坐标系
out_lyr = out_ds.CreateLayer(out_shapefile.split(".")[0], proj, ogr.wkbPoint)
# copy the schema of the original shapefile to the destination shapefile
lyr_def = in_lyr.GetLayerDefn()
for i in range(lyr_def.GetFieldCount()): # 获取字段长度
  out_lyr.CreateField(lyr_def.GetFieldDefn(i)) # 创建字段
  feature = ogr.Feature(lyr_def)
  wkt = "POINT(88615.730000 75345.486000)"
  point = ogr.CreateGeometryFromWkt(wkt)
  feature.SetGeometry(point)
  # 添加点
  out_lyr.CreateFeature(feature)
  # 关闭 特征
  feature = None
  # 关闭数据
data_source = None

以上这篇Python 根据数据模板创建shapefile的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python下如何让web元素的生成更简单的分析
Jul 17 Python
Python3生成手写体数字方法
Jan 30 Python
在python中安装basemap的教程
Sep 20 Python
解决Python2.7中IDLE启动没有反应的问题
Nov 30 Python
python正则表达式去除两个特殊字符间的内容方法
Dec 24 Python
Python笔试面试题小结
Sep 07 Python
使用pyqt5 tablewidget 单元格设置正则表达式
Dec 13 Python
python生成任意频率正弦波方式
Feb 25 Python
pandas使用函数批量处理数据(map、apply、applymap)
Nov 27 Python
细说NumPy数组的四种乘法的使用
Dec 18 Python
如何用python绘制雷达图
Apr 24 Python
如何利用Python实现一个论文降重工具
Jul 09 Python
Python实现直播推流效果
Nov 26 #Python
Python利用matplotlib绘制约数个数统计图示例
Nov 26 #Python
创建Shapefile文件并写入数据的例子
Nov 26 #Python
python使用opencv在Windows下调用摄像头实现解析
Nov 26 #Python
使用Python实现 学生学籍管理系统
Nov 26 #Python
python redis 批量设置过期key过程解析
Nov 26 #Python
python3 tkinter实现添加图片和文本
Nov 26 #Python
You might like
php访问查询mysql数据的三种方法
2006/10/09 PHP
PHP 地址栏信息的获取代码
2009/01/07 PHP
在Yii框架中使用PHP模板引擎Twig的例子
2014/06/13 PHP
PHP中ini_set与ini_get用法实例
2014/11/04 PHP
php替换字符串中间字符为省略号的方法
2015/05/04 PHP
PHP中Array相关函数简介
2016/07/03 PHP
php验证身份证号码正确性的函数
2016/07/20 PHP
PHP调用接口用post方法传送json数据的实例
2018/05/31 PHP
php libevent 功能与使用方法详解
2020/03/04 PHP
PHP预定义接口――Iterator用法示例
2020/06/05 PHP
利用JQuery的load函数动态加载其它页面的内容的实现代码
2010/12/14 Javascript
Javascript基础教程之数据类型 (字符串 String)
2015/01/18 Javascript
js停止冒泡和阻止浏览器默认行为的简单方法
2016/05/15 Javascript
vue axios用法教程详解
2017/07/23 Javascript
Angular4开发解决跨域问题详解
2017/08/28 Javascript
JavaScript实现数字前补“0”的五种方法示例
2019/01/03 Javascript
VUE的history模式下除了index外其他路由404报错解决办法
2019/08/21 Javascript
Vue3 源码导读(推荐)
2019/10/14 Javascript
[02:15]你好,这就是DOTA!
2015/08/05 DOTA
[02:19]DOTA2上海特级锦标赛 观赛指南 Spectator Guide
2016/02/04 DOTA
Python3匿名函数用法示例
2018/07/25 Python
Linux下远程连接Jupyter+pyspark部署教程
2019/06/21 Python
Python算法中的时间复杂度问题
2019/11/19 Python
tensorflow 自定义损失函数示例代码
2020/02/05 Python
详解Python GUI编程之PyQt5入门到实战
2020/12/10 Python
python des,aes,rsa加解密的实现
2021/01/16 Python
HTML5边玩边学(1)画布实现方法
2010/09/21 HTML / CSS
波兰最大的度假胜地和城市公寓租赁运营商:Sun & Snow
2018/10/18 全球购物
萨克斯第五大道英国:Saks Fifth Avenue英国
2019/04/01 全球购物
大学生党员承诺书
2014/05/20 职场文书
关于清明节的演讲稿
2014/09/13 职场文书
2016干部作风整顿心得体会
2016/01/22 职场文书
2016社区平安家庭事迹材料
2016/02/26 职场文书
Nginx配置根据url参数重定向
2022/04/11 Servers
CentOS7安装MySQL8的超级详细教程(无坑!)
2022/06/10 Servers
前端使用svg图片改色实现示例
2022/07/23 HTML / CSS