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爬虫之urllib2中的两个重要概念:Openers和Handlers
Nov 05 Python
用Python给文本创立向量空间模型的教程
Apr 23 Python
Python中的变量和作用域详解
Jul 13 Python
Python进行数据提取的方法总结
Aug 22 Python
python中执行shell的两种方法总结
Jan 10 Python
python中不能连接超时的问题及解决方法
Jun 10 Python
python的scikit-learn将特征转成one-hot特征的方法
Jul 10 Python
python mac下安装虚拟环境的图文教程
Apr 12 Python
python selenium爬取斗鱼所有直播房间信息过程详解
Aug 09 Python
python协程gevent案例 爬取斗鱼图片过程解析
Aug 27 Python
Keras使用tensorboard显示训练过程的实例
Feb 15 Python
PyQt5中QTableWidget如何弹出菜单的示例代码
Feb 23 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获取MAC地址的函数代码
2011/09/11 PHP
学习php设计模式 php实现命令模式(command)
2015/12/08 PHP
laravel中命名路由的使用方法
2017/02/24 PHP
php7基于递归实现删除空文件夹的方法示例
2017/06/15 PHP
js表格分页实现代码
2009/09/18 Javascript
基于jquery的设置页面文本框 只能输入数字的实现代码
2011/04/19 Javascript
Document.location.href和.replace的区别示例介绍
2014/03/04 Javascript
jquery让返回的内容显示在特定div里(代码少而精悍)
2014/06/23 Javascript
全面解析jQuery $(document).ready()和JavaScript onload事件
2016/06/08 Javascript
vue生成token保存在客户端localStorage中的方法
2017/10/25 Javascript
vue+swiper实现侧滑菜单效果
2017/12/28 Javascript
vue对storejs获取的数据进行处理时遇到的几种问题小结
2018/03/20 Javascript
Vue中多个元素、组件的过渡及列表过渡的方法示例
2019/02/13 Javascript
微信小程序仿抖音短视频切换效果的实例代码
2020/06/24 Javascript
vue自定义指令限制输入框输入值的步骤与完整代码
2020/08/30 Javascript
[48:35]2018DOTA2亚洲邀请赛 4.1 小组赛 A组加赛 TNC vs Optic
2018/04/03 DOTA
python编程-将Python程序转化为可执行程序[整理]
2007/04/09 Python
简单讲解Python中的闭包
2015/08/11 Python
itchat接口使用示例
2017/10/23 Python
TensorFlow中权重的随机初始化的方法
2018/02/11 Python
Python两台电脑实现TCP通信的方法示例
2019/05/06 Python
Python变量访问权限控制详解
2019/06/29 Python
django删除表重建的实现方法
2019/08/28 Python
Python常用模块sys,os,time,random功能与用法实例分析
2020/01/07 Python
Python模块/包/库安装的六种方法及区别
2020/02/24 Python
现代家居用品及礼品:LBC Modern
2018/06/24 全球购物
N.Peal官网:来自伦敦的高档羊绒品牌
2018/10/29 全球购物
Set里的元素是不能重复的,那么用什么方法来区分重复与否呢? 是用==还是equals()? 它们有何区别?用contains来区分是否有重复的对象。还是都不用
2013/07/30 面试题
销售经理工作职责
2014/02/03 职场文书
绘画专业自荐信范文
2014/02/23 职场文书
小学综治宣传月活动总结
2014/07/02 职场文书
擅自离岗检讨书
2014/09/12 职场文书
幼儿教师年度个人总结
2015/02/05 职场文书
公司员工奖惩制度
2015/08/04 职场文书
JavaScript 事件捕获冒泡与捕获详情
2021/11/11 Javascript
Nginx stream 配置代理(Nginx TCP/UDP 负载均衡)
2021/11/17 Servers