python结合ogr2ogr之地理数据格式转换-1

这篇公众号文章里,初步记录了使用python调用org2ogr进行数据格式转换以及打包exe的过程,测试了常用的几种数据,shp数据、dxf数据、dwg数据、KML数据,shp和kml互转没有问题,牵扯到dxf和dwg的都有问题,主要是:


1ERROR 4: Failed to find template header file header.dxf for reading,
is GDAL_DATA set properly?
DXF driver failed to create out.dxf

当输入输出的数据类型有dxf时,则会报这个错误

从错误的字面理解来看,查找header.dxf文件失败,是否正确设置了GDAL_DATA,意思是,执行该操作,需要用到header.dxf这个文件,可是程序找不到这个文件,这个文件应该通过GDAL_DATA设置。

解决办法:在环境变量添加GDAL_DATA,值为header.dxf所在的路径

重启vscode再次执行即可正确实现dxf与shapefile之间的互转,dxf与kml之间的互转。不过在执行kml转dxf的时候,可能会出现一些错误,提示某些字段无法正常创建,主要是因为不同的格式之间,不可避免的存在一些差异,无法一一对应的转换,如果只对图形有要求,这些错误可以忽略。

2、

CAD driver does not support data source creation.

当进行CAD数据与其他数据之间转换时,会出现这个错误,字面意思是CAD驱动器不支持数据源的创建。这主要是因为CAD驱动器对版本有要求,我不知道是我安装的ogr2ogr版本老了还是怎么滴,该工具只支持R2000,瞬间让我觉得这个功能非常鸡肋,这个淘汰了那么多年的版本现在几乎见不到,只能二次转换,当转换一个R2000版本的CAD时,可以顺利转出,然而,当别的格式转换成CAD时,就不牵扯到版本了,程序可以按照它自己的要求转出CAD版本,然后,这个错误一直没有解决。

3、这个不是错误,pyinstaller打包exe时图标更换

加入-i 参数

 pyinstaller --onefile --windowed g:\python\learting\shapefile\ToKML.PY -i g:\python\learting\shapefile\favicon.ico

整体来说,org2ogr功能强大,将很多复杂的转换通过命令行的形式简单解决,原来写一个kml和dxf转换的程序,花了几千行代码,只能转换部分要素,这几个加起来不到100行,极大提高了效率,但是它确实也有不足啊:

  • 版本要求严格,且有的数据格式支持版本有限

  • CSV到kml无法进行坐标转换,只能直接写入,其他数据转换为空不知道为什么

  • 同样存在数据丢失的情况

测试了自己常用的几个数据,其它几十种等用得到有数据再测试看看吧。

python结合ogr2ogr之地理数据格式转换-2相关推荐

  1. python结合ogr2ogr之地理数据格式转换-1

    前面写过一篇公众号文章,当时为了能将矢量CAD数据转换成kml,找到了一个开源的.net库netdxf,该库支持dxf文件直接读写,方便快捷: DXF转KML-1http://mp.weixin.qq ...

  2. 使用python开发json、csv数据格式转换工具

    使用python开发json.csv数据格式转换工具 json和xml是业界常用的数据格式,而游戏行业经常使用csv配表,包括本地化文本和数值.本文介绍csv和json序列化.逆序列化相关的pytho ...

  3. Python读取多个excel文件(删除字段、数据格式转换、dataframe多表合并)并写入ElasticSearch实战(自动创建索引、写入ElasticSearch、探索性数据分析)

    Python读取多个excel文件(删除字段.数据格式转换.dataframe多表合并)并写入ElasticSearch实战(自动创建索引.写入ElasticSearch.探索性数据分析) 目录

  4. 【ArcGIS遇上Python】ArcGIS10.8 Python代码批量完美实现MODIS NDVI数据格式转换和投影变换

    由于论文的需要,将MODIS NDVI数据进行投影变换和格式转换,具体操作可以参照:<ArcGIS10.8完美实现MODIS NDVI数据格式转换和投影变换>,但是该文章中的做法只能一次性 ...

  5. ENVI5.4完美实现MODIS NDVI数据格式转换和投影变换

    如上图所示,分别为: View1:MODIS hdf数据多波段 View2:MODIS NDVI波段 View3:ArcGIS10.8投影变换后的MODIS NDVI View4:ENVI5.4投影变 ...

  6. ArcGIS10.8完美实现MODIS NDVI数据格式转换和投影变换

    大家都熟知,MODIS NDVI数据的处理一般是在MRT中进行的,但熟不知ArcGIS中也可以实现投影变换个数据格式的转换,本文就以MOD13Q1.A2020001.h26v05.006.202001 ...

  7. 使用Python,OpenCV进行图像平移转换

    使用Python,OpenCV进行图像平移转换 1. 效果图 2. 原理 3. 源码 参考 这篇博客将介绍如何使用Python,OpenCV对图像进行平移转换.平移是图像沿x轴和y轴的移动.使用平移, ...

  8. R语言数据格式转换函数、数据类型判断函数(numeric、character、vector、matrix、data.frame、factor、logical)、R语言数据格式类型转换

    R语言数据格式转换函数.数据类型判断函数(numeric数值.character字符串.vector向量.matrix矩阵.data.frame数据表.factor因子.logical逻辑).R语言数 ...

  9. 目标检测中的数据格式转换工具Roboflow

    目标检测中的数据格式转换工具.Roboflow Roboflow提供了您需要的所有工具,将原始图像转换为定制的训练有素的计算机视觉模型,并部署它在您的应用程序中使用. Roboflow支持检测目标和分 ...

最新文章

  1. 数据科学之基石:数据科学家必须掌握的10个统计学概念
  2. sencha touch tabsidebar 源码扩展
  3. 低照度监控前景广阔 企业展开激烈角逐
  4. 缓存服务器协议有哪些,HTTP 协议的缓存机制概述
  5. Java 网络编程(二) 两类传输协议:TCP UDP
  6. 【python基础知识】对文本数据库的一些基本操作
  7. idea swing 插件_【分享】我的idea配置
  8. Vijos 1092 全排列
  9. Linux fork与vfork的区别
  10. RabbitMQ 与 Erlang 安装与配置
  11. Visual Entity 使用(四)添加、删除属性
  12. 知网一键下载PDF文献
  13. 呼叫中心语音外呼营销系统软件成企业首选
  14. vba excel 画折线图
  15. 硬件工程师为什么远不如软件工程师?
  16. Weekly Recap!相对不平淡的行情 相对冷淡的 DeFi 市场
  17. 微信小程序——关于时间
  18. Lab5: xv6 lazy page allocation
  19. 高效 PyCharm 使用技巧
  20. Windows同步任意个人文件夹到OneDrive

热门文章

  1. Python 采集109个中国风风格PPT
  2. 3875: [Ahoi2014]骑士游戏
  3. 微信公众号直播有哪些不一样的玩法?
  4. 宝塔linux面板时区不正确怎么修改
  5. android 键盘 自动消失,android 键盘状态,获取键盘显示和隐藏
  6. k-means算法与pca结合对多特征组聚类
  7. 《SAAS 架构设计》读后感
  8. javascript中substring,substr和slice对比
  9. Java中高级核心知识全面解析(3),美团Java面试算法题
  10. R语言 trim=0.1 tirm=0.2 什么意思呢?