为了方便GIS地图处理,这里有一些指向地理空间数据和其他与GIS相关的东西的重要资源的链接,您可能会觉得有用:
概述 用到Oracle Spatial就很难避免shp文件的入库问题,虽然有shp2sdo工具,但是用起来不是很习惯,所以,本文讲述如何结合geotools实现shp2sql的转换。 效果 ?...import java.util.List; import java.util.Map; import com.lzugis.geotools.model.Fields; public class Shp2Orcale...shp2orcl =new Shp2Orcale(); String shppath = "D:\\data\\wgs84\\capital.shp"; String...sql\\capital.sql"; try{ long start = System.currentTimeMillis(); //读取shp...文件 shp2orcl.readShape(shppath); shp2orcl.getShpFields(); shp2orcl.createTableSql
操作 本文主要写的是利用GeoTools 连接shp文件,并对其进行增删改。 由于过于简单,就当笔记记录一下,时间宝贵的同学就不要看了。...最终代码如下所列: 1.往shp文件中增加记录 public void addFeature(List dataList) throws IOException { System.out.println...Exception eek) { eek.printStackTrace(); transaction.rollback(); } } 2.往shp...System.currentTimeMillis() - currentTimeMillis; System.out.println("耗时:"+l/1000.0); } 3.往shp...System.currentTimeMillis() - currentTimeMillis; System.out.println("耗时:"+l/1000.0); } 4.查询shp
偶然看见有人在求什么西南区域,东北区域的shp,写一期不求人攻略。 前面写过怎么裁剪,这次讲讲怎么合并,实现区域shp自由 In [33]: !...读取全国地图数据 china_map = gpd.read_file('/home/mw/input/china1656/china_map/china_map/China_Province_2022.shp.../tj.shp') bj = china_map[china_map['省'] == '北京市'] bj =bj.rename(columns={'省': 'Province','省级码':'code'.../bj.shp') hb = china_map[china_map['省'] == '河北省'] hb =hb.rename(columns={'省': 'Province','省级码':'code'...(filename = "/home/mw/project/bj.shp") tjs = gpd.read_file(filename = "/home/mw/project/tj.shp") hbs
Python中也提供了大量的shp文件处理方法,有底层的一些库,也有一些封装比较完整的库。....shp') 获取shp文件中属性信息 >>> shps.schema {'properties': OrderedDict([('ID_0', 'int:10'),...('type') >>> shp.get('id') >>> shp.get('geometry') shps 变量包含了一些方法可以获取shape文件中的每个边界,比如 .next,.iterms等。...写shp文件 构建shp文件的操作很少使用,但有时候可能需要从已有的shp文件中提取一个子区域。...>>> shp = next(iter(shps)) >>> subshp.write(shp) ## 写入字段 >>> subshp.flush() ## 更新文件 >>> subshp.close
正文 最近在使用GDAL读写Shp格式中的属性字段的时候也遇到了中文乱码的问题,总结下自己遇到的情况。...1.1. shp文件本身的编码的问题 应该是由于shp格式加入了对宽字符的支持,所以导致有段时间的shp文件和ArcGIS是存在不匹配的问题,所以在网上搜索资源的时候遇到了大量的关于ArcMap显示shp...现在的shp格式的文件应该已经稳定下来了,新添加了一个.cpg的文件,里面保存着属性表的编码格式: ?...图1-1:shp格式的.cpg文件 从ArcGIS10.2开始,只要是属性表编码与.cpg文件记录的编码方式一致,就不会再有显示乱码的问题。...GDAL设置 可以通过全局设置函数CPLSetConfigOption(),来配置读取Shp文件的读取编码。
概述: 本文讲解通过Geotools实现用shp和sld导出图片。...public static void main(String[] args){ long start = System.currentTimeMillis(); Shape2Image shp2img...= new Shape2Image(); String shpPath = "D:\\data\\beijing\\China4326.shp"; String sldPath = "D:\\...data\\beijing\\China4326.sld"; String shpPath1 = "D:\\data\\gdal\\university.shp"; String sldPath1...(shpPath, sldPath); shp2img.addShapeLayer(shpPath1, sldPath1); shp2img.getMapContent(paras, imgPath
关键点 要实现类似的功能有两个关键点: 1、已经计算过的两个数据不能重复计算; 2、需要保留两个shp图形的属性。 这两点在后面的代码里面会有相对比较详细的注释的。 实现结果 ? ? ?...double start = System.currentTimeMillis(); String inputPath1 = "D:\\data\\province.shp...", inputPath2 = "D:\\data\\test.shp", outputPath = "D:\\data\\province_test.shp
Shapefile文件的结构包括多个文件,最重要的文件包括.shp,.shx,.dbf以及.prj文件: 文件扩展 作用 备注 .shp 用于存储要素几何的主文件,其中包括几何图形 必要文件,有的软件只需要...shp文件 .shx 形状要素索引文件,适当尺寸的几何元素索引信息可以加快访问速度 必要文件必须和shp文件在一起 .dbf 数据库文件,其中包含几何元素的属性信息 必要文件,可以通过excel打开,查看属性信息...cpg .dbf的代码文件 为.dbf文件提供国际化支持 .shp.xml 元数据 地理空间元数据.xml的容器 需要注意的是在拷贝shp文件时,需要至少把前4个文件一起拷贝,单独拷贝shp文件无法读取...库,因此本文主要介绍利用OGR库对shp文件的处理。...kml文件 Conclusion 本期主要介绍了python GDAL/OGR对shp文件的读写和格式转换,下一部分将对shp文件的空间分析算法和常用操作进行介绍,例如判断两个shp的交并差补以及点插值为面等算法内容
=0): pointExcel=xlrd.open_workbook(excelPath) pointSheet=pointExcel.sheet_by_index(0) #shp...=shapefile.Writer(shapefile.POINT) #2.7 shp=shapefile.Writer(shpPath,shapefile.POINTZ) fields...(field) for i in range(1,pointSheet.nrows): #shp.pointz(pointSheet.row(i)[xIndex].value,...(i)[x].value,includeIndexs))) #shp.save(shpPath) #2.7 shp.close() def genLine(pointExcelPath...(i)[x].value,includeIndexs))) #shp.save(shpPath) #2.7 shp.close() if __name__=='__main__':
一个有趣的灵魂W 目的: 把shp文件写入pg数据库。注意:shp文件含点、线、面(‘POINT’,'LINESTRING','POLYGON')~这是重点。...准备就绪后进入pg数据库的sql界面,输入: CREATE EXTENSION postgis; (这步可以忽略,如果python运行出错,回头运行也可以) 确认PosrGIS(如下图) 首先,你需要有一个shp...其次,将shp文件导入Geodataframe中。 再把Geodataframe写入pg数据库。...密码 #localhost:port就不解释了 map_data = gpd.GeoDataFrame.from_file('D:/Thesis/fjsouthwest/New_Shapefile.shp...localhost user=user dbname=dbname password=password"+'"'+' '+'"'+"D:/Thesis/fjsouthwest/grid/mxn/mxn.shp
概述: 在前面有一篇文章中讲到了GDAL将shp转换为GeoJson的实现,以及ol2、3以及Arcgis for js中GeoJson的加载,今天呢,书接上文,介绍Geotools如何读取shp...读取shp package com.lzugis.web; import net.sf.json.JSONArray; import org.geotools.data.shapefile.ShapefileDataStore...java.text.SimpleDateFormat; import java.util.*; @WebServlet(description = "read shape", urlPatterns = {"/shp...String layer = request.getParameter("layer"); String shpPath = "D:\\data\\china\\"+layer+".shp...$.ajax({ type: 'POST', url: "http://localhost:8081/lzugis/shp
概述: 本文讲述如何在geotools中实现shp数据的缓冲区分析并保存到shp文件中。...ShapeBuffer geoR = new ShapeBuffer(); String shpfile = "/Users/lzugis/Documents/chinadata/capital.shp..."; String buffile = "/Users/lzugis/Documents/chinadata/capital_buffer.shp"; try{ //读取shp文件
概述: 在本文中,讲述如何在geotools中实现shp和geojson数据的相互转换。...public class FileFormat { private static CommonMethod cm = new CommonMethod(); /** * geojson转换为shp...failure"); map.put("message", e.getMessage()); e.printStackTrace(); } return map; } /** * shp...start = System.currentTimeMillis(); String shpPath = "/Users/lzugis/Documents/chinadata/cityboundry.shp...= fileFormat.shape2Geojson(shpPath, jsonPath); // String shpPath = "D:/data/beijing/China43262.shp
话不多说,开始今天的主题,今天主要介绍如何将 Shp 文件转为 GeoJson,这在 QGIS、ArcGIS 等专业软件中很容易实现,只需要点个按钮就行了,本文正是来研究这点个按钮背后发生的故事。...一、实现方式 1.1 理论分析 其实这个过程逻辑上比较简单,首先将 Shp 文件读入内存,再分别读出空间属性和普通属性,将二者组合起来按照 GeoJson 文件的格式写入即可。...1.2 具体实现 读 Shp 文件 只需要一行代码即可解决: val datas = ShapeFileReader.readSimpleFeatures(path) 这是 GeoTrellis 封装好的读...Shp文件的方法,但是此种方式存在一个问题,无法设置读 Shp 文件时的编码方式,如果 Shp 文件不是 UTF-8 编码会存在乱码的问题,简单改造一下源码即可实现: val datas = {...三、总结 本文介绍了两种语言下实现 Shp 转为 GeoJson 的方式,主要是分析解决问题的思路。
后端实现 router.post('/upload/shp', function (req, res) { const filePath = path.resolve(__dirname, '../...path.parse(file); let fileName = '' if(ext) { // 文件 fileName = `${name}.shp...const _file = fs.readdirSync(_path)[0] fileName = `${name}/${path.parse(_file).name}.shp...this.initMap() }, computed: { uploadAction() { return `//${window.location.hostname}/file/upload/shp
概述: 前两天,有位同仁再问我一个问题,问题大概是介个样子的:打包shp数据位zip格式并上传,上传完成后再在web上展示出来。...这个需求,以前在Arcgis Online上见过,所以还是比较熟悉的,所以我就给他说:先将zip解压,再读取shp数据并将之转换为Geojson返回前台,并在web上展示出来。...很庆幸的是,者为同仁很快就实现了shp到Geojson的转换,就问我Arcgis for js 中怎么展示Geojson,我截了个Arcgis for js的API给他他就实现了上述的功能。...gdal.SetConfigOption("SHAPE_ENCODING",""); String strVectorFile = "D:\\data\\china\\capital.shp
不用 SHP 文件进行气象绘图的三种方式 ======================================== 01 前言 在气象绘图中,使用 SHP 文件经常会带来一些麻烦。...为了摆脱对 SHP 文件的依赖,我们需要思考如何直接进行绘图而不受其限制。本文将介绍三种不使用 SHP 文件进行气象绘图的工具。...02 项目目标 本项目旨在解决在气象作图过程中对 SHP 文件的依赖问题。 03 项目方法 在以下内容中,将详细介绍三种不使用 SHP 文件进行气象绘图的方法,帮助读者更好地进行气象数据可视化。
本节讲述的是geotools的开胃菜,打开本地shp文件,并在窗口中显示。 引言:geotools简介。 Geotools是Java语言编写的开源GIS工具包。...打开shp文件 ? 查看对象属性 接下来,说说实现方式。...data store file chooser dialog for shapefiles File file = JFileDataStoreChooser.showOpenFile("shp...map.addLayer(layer); // Now display the map JMapFrame.showMap(map); } } 上述代码即可打开shp
内容介绍 经常会有朋友问:为什么自己的shp数据,字段名只能放三个汉字;而别人的shp数据,字段名能取四五个汉字? 为什么呢?同样都是shp,怎么还长短不一了呢?...shp是个啥? shp是一种最常见的地理数据格式,大多数人对这种格式都不陌生。 关于shp的详细介绍,可以自行前往这个地址去看。...shp是由多个文件组成的(这几个是必须的): .shp – 主文件,存储几何实体; .shx – 索引文件,存储几何实体索引; .dbf – dBase数据库,存储属性信息。...,必须要包含shp、shx、dbf三种类型的数据。...经过上面的介绍,相信大家基本上就能明白:为什么有些shp字段名是中文,可以放五个汉字(gbk,五个汉字恰好10字节);有些shp字段名是中文,却只能放三个汉字(utf8,三个汉字占9字节)。
领取专属 10元无门槛券
手把手带您无忧上云