PostgreSQL 和 PostGIS 已经是热门的开源工程,已经收录在各大 Linux 发行版的 yum 或 apt 包中。Ubuntu 为例,安装以下包即可:
最近研究了下postgresql数据库及其空间地理信息拓展插件——postgis。
PostGIS作为PostgreSQL数据库的空间扩展,提供了对空间数据管理的支持。对于空间矢量数据,PostGIS提供了Geometry和Geography俩种类型用于空间对象的存储,Geometry使用笛卡尔坐标系,而Geography使用球面坐标系(默认是WGS84坐标系)。对于空间栅格数据,则提供了Raster类型。
把shp文件写入pg数据库。注意:shp文件含点、线、面(‘POINT’,'LINESTRING','POLYGON')~这是重点。
为方便大家下载,我将所有软件上传的百度网盘里了,有需要的可以上网盘直接下载,地址为:http://pan.baidu.com/s/1ntJrf8P,此外,openlayers的下载地址为:http://pan.baidu.com/s/1kTBTCX5。
以前在处理gis数据的时候,都是直接导入本地shp素材、本地geojson素材,本地topojson素材,自从接触postgis数据之后,深感使用规范的存储系统来统一管理gis数据的好处,特别是数据量大了之后,优势便更加明显,你可以选择将很多需要做空间计算的步骤转移到Postgis数据库内进行计算,要知道Postgis提供的空间计算能力与R和Python这种应用导向的工具相比,优势要大得多。
PgRouting是基于开源空间数据库PostGIS用于网络分析的扩展模块,最初它被称作pgDijkstra,因为它只是利用Dijkstra算法实现最短路径搜索,之后慢慢添加了其他的路径分析算法,如A算法,双向A算法,Dijkstra算法,双向Dijkstra算法,tsp货郎担算法等,然后被更名为pgRouting[1]。该扩展库依托PostGIS自身的gist索引,丰富的坐标系与图形类型,强大的几何处理能力,如空间查询,空间处理,线性参考等优势,能保障在较大数据级别下的网络分析效果更快更好。 PostGIS早已奠定了最优秀的开源空间数据库地位,在新时代GIS中的应用将会越来越普遍。其实,网络分析算法很多服务端语言如java,C#等虽能实现,但基于真实城市道路数据量较大且查询分析操作步骤复杂与数据库交互频繁,以这类服务端频繁访问数据库导致数据库开销压力较大,分析较慢,故选择PgRouting在数据库内部实现算法,提升分析效率。最后,路径分析不仅仅是最短路径,在实际应用中还有最短耗时,最近距离,道路对车辆类型限制,道路对速度限制等因素,交通事故、市政事故导致的交通障碍点等问题,所有的问题本质其实是对路径分析权重(Weight)的设置问题。
PostGIS是PostgreSQL关系数据库的空间扩展。PostGIS允许您使用几何和地理数据类型存储空间数据,使用空间函数执行空间查询以确定区域,距离,长度和周长,并在数据上创建空间索引以加速空间查询。
昨日下午2点,“GIS讲堂-第一课”-《开源GIS环境搭建相关内容》在众目期待中结束了,下面就本节课的内容给大家做一个汇报,同时也希望没有能够参与到直播的童鞋们能够感受一下直播的气氛,争取下次开课的时候有更多的同仁参与进来,大家一起畅谈GIS。
今日洞见 文章作者来自ThoughtWorks:邱俊涛。 本文所有内容,包括文字、图片和音视频资料,版权均属ThoughtWorks公司所有,任何媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发布/发表。已经本网协议授权的媒体、网站,在使用时必须注明"内容来源:ThoughtWorks洞见",并指定原文链接,违者本网将依法追究责任。 可视化你的足迹 数据可视化可以让读者以一种轻松的方式来消费数据,人类大脑在处理图形的速度是处理文本的66,000倍,这也是人们常常说的一图胜千言。在本文中
此前从未接触过ArcGIS,对Oracle和postGre SQL也比较陌生。本文介绍了从零开始,到搭建环境,再到发布第一个ArcGIS地图服务的完整过程。
空间索引方法有助于加速空间查询。大多数 GIS 软件和数据库都提供了一种机制来计算和使用数据图层的空间索引。QGIS 和 PostGIS 使用基于 R-Tree 数据结构的空间索引方案 - 它使用几何边界框创建分层树。这是非常有效的,并在某些类型的空间查询中产生了很大的加速。查看我的高级 QGIS 课程的空间索引部分,我将展示如何在 QGIS 中使用基于 R 树的空间索引。
在python与地理空间分析(1)与(2)中我们介绍了GIS中常用的数据类型、python在处理地理空间数据时用到的包以及给定经纬度计算空间距离的算法,本期我们主要介绍对地理空间分析中常用到的矢量数据shp文件的处理,在捍卫祖国领土从每一张地图开始我们也提供较为精准的包括南海九段线的中国地图,大家可以自行下载。
NASA World Wind是使用.NET开发的一个Windows窗体系统,以地球外观看得角度提供全球定位功能,类似于Google Earth。它结合了美国国家航空航天局(NASA)从卫星拍摄的图像,这些图像应用于Blue Marble, Landsat 7, SRTM, MODIS 以及其它更多的地方。 链接:http://www.worldwindcentral.com/wiki/Main_page
昨天要处理一个shp文件,读取里面的信息,做个计算然后写到后面新建的field里面。先写个外面网上都能找到的新建和读取吧。
因为一些缘故,工作中了解了一下 GIS。本文算是菜鸟的学习笔记吧,如有错误,衷心希望专业的 GIS 同学指正~
上一篇博文PostGIS导入导出ESRI Shapefile数据介绍了如何导入空间矢量数据到PostgreSQL中,紧接上一篇,本文将介绍如何使用PostGIS导入导出空间栅格数据。 实验环境和上一篇的博文一样: Ubuntu 16.04 LTS 。 数据为全球影像(ESRI ArcGIS提供的示例数据),下载连接:全球影像百度网盘下载 可以使用GDAL的gdalinfo命令查看其详细信息:
矢量数据基于对象模型(object-based)的空间数据描述模型。矢量数据使用对象(点,线,面)及其对象之间的关系描述空间实体。
PostGIS是PostgreSQL的空间扩展,他使得PostgreSQL支持空间数据类型,比如点、线段、折线段、多边形、椭圆等等,并且能够使用高效的空间索引进行存储和查找。
人类理解世界其实是按照三维的角度,而传统的关系型数据库是二维的,要想描述空间地理位置,点、线、面,我们就需要一个三维数据库,即所谓空间数据库。
在前面四篇博客中我们主要讲了对于空间矢量数据的属性数据的增删改查,在这篇博文中我们要讲解空间查询–GIS系统很重要的一项功能。空间查询就是根据地物的空间位置进行查询的一种数据检索方式。比如,我们要查询一条河流经的城市;一个公园内的所有路灯;离当前位置最近的公共卫生间等等都属于常用的空间查询。
PostGIS作为postgresql针对地理空间数据的拓展功能,可以帮助我们有效管理和固化空间矢量数据,以及开展空间数据分析,而geopandas作为Python生态中优秀的空间数据分析处理工具,自然在与PostGIS进行交互方面开发了相应的功能。
如果我们有一批以文件存储的影像数据如何利用PostGIS批量的导出到PostgreSQL数据库中进行管理呢? (单个数据的导入参见我上篇博文:PostGIS导入导出栅格数据)
PostGIS作为postgresql针对「地理空间数据」的拓展功能,可以帮助我们有效管理和固化空间矢量数据,以及开展空间数据分析,而geopandas作为Python生态中优秀的空间数据分析处理工具,自然在与PostGIS进行交互方面开发了相应的功能。
前言 软件下载官网:https://www.postgresql.org/download/
geodatabase有以下三种类型:文件地理数据库,个人地理数据库、arcsed数据库
涉及到空间数据处理的时候,为了比较清晰方便的看出空间数据所处的区域,通常都需要将省市边界线加到地图中。
做了这么多数据地图,是时候该总结一些心得和理念了,今天这篇讨论ggplot2所支持的数据地图素材格式。 library("plyr") library("dplyr") library("rgdal") library("sf") library(maptools) library("ggplot2") library("ggthemes") library("geojsonio") options(stringsAsFactors=FALSE,warn=FALSE,encoding="UTF-8") 今
现在使用经纬度转geohash的算法,将二维的距离运算转换为like前缀匹配。通过比较9位到5位前缀,来获取附近5米到3km之内的坐标,为了寻求更快的定位方法,测试一下postgres的空间类型。
最近参与了一个IOT环境项目,需要对某个城市的某几个区域做环境监控与治理,其中就用到了地图叠加层的功能,粗看很复杂,其实很简单,先来看一下效果,然后再来讲一下如何实现的:
Hey!探险家们,猫头虎博主再次与你相聚!最近,有不少伙伴在搜索“PostgreSQL 扩展推荐”、“PostgreSQL插件增效” 等词条,想要找到一些能够增强自己数据库能力的利器。好吧,这篇《增强你的PostgreSQL:最佳扩展和插件推荐》应该能满足你的好奇心!
以前我一直觉得Python的绘图工具与R语言ggplot2比起来,不够优雅,这也是我一直坚定的选择使用R+ggplot2深入的学习数据可视化的原因,ggplot2在坐标系的整合与兼容性和扩展性上确实技高一筹,所以ggplot2成了可视化的巨无霸,成了可视化界的微信,不仅自身生态日趋完善,而且还有众多的开发者为其开发辅助功能包(你可以理解为依附于微信的小程序)。 最近偶然在学习Python可视化的过程中,了解到了geopandas,确实第一眼看着很眼熟,或许你第一眼就能把它与pandas联系起来。的确,它跟
GeoServer提供了一个RESTful接口,客户端可以通过该接口获取有关实例的信息并进行配置更改。REST接口使用简单的HTTP调用,通过客户端就可以配置GeoServer,而无需使用Web管理接口。
GeoServer 是一个用 Java 编写的开源软件服务器,允许用户共享和编辑地理空间数据,GeoServer 基于 Spring 开发,使用到了 GeoTools 库。
很多小伙伴说这样的节奏想看连续剧,我们接着讲地图可视化。我们将思路和资源都会免费发布在本文中,但视频操作需要订阅会员或购买专业的BI可视化教程。
前面已经给大家介绍过如何用cdo配合shape文件提取CMIP6指定区域数据,这个思路首先需要用gdal将shape文件转为netCDF格式的文件,然后再用cdo ifthen进行裁剪,今天要给大家介绍的是如何用gepandas+salem库直接用shape文件对CMIP6文件进行掩码,无需把shape文件转换为netCDF格式文件,最后再调用cdo的selbox操作进行裁剪。
在本文中,我们将介绍 PostGIS 的一些基础知识及其功能,以及一些可用于简化解决方案或提高性能的提示和技巧。
大家好我是费老师,在日常研发地图类应用的场景中,为了在地图上快速加载大量的矢量要素,且方便快捷的在前端处理矢量的样式,且矢量数据可以携带对应的若干属性字段,目前主流的做法是使用矢量切片(vector tiles)的方式将矢量数据发布为服务进行调用:
假如动物们也用GPS,突然有那么一天北极的公北极熊有点冲动,想刷一下附近有没有母熊。要求距离越近越好,不是澳大利亚动物园那只,也不是格陵兰岛上被囚禁的那群呆企鹅,要是有点共同的嗜好就再好不过了。这种应用场景如何解决?
% 该函数选择了以本初子午线和赤道(0°纬度,0°经度)为中心的Robinson投影
上一篇教程介绍了绘制完整地图的方法:R 语言绘制十段线地图,给特定省份填色,今天我们将继续探索分省市地图的绘制。
❝本文示例代码已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes ❞
数据地图SPSS篇 ▼▼▼ 最近在做数据地图专题,搜集了好多能够实现数据地图可视化的软件操作技巧,唯独漏掉了SPSS。 总觉得SPSS作为一个傻瓜式菜单操作的统计分析软件,应该干不了像数据地图这种高技术含量的工作,因为毕竟想做专业的数据地图,除了主流的数据可视化产品(tableau、PowerBI、Xcelius(水晶易表))无需写代码之外,大部分统计分析软件是需要自己编写代码的。 这样门槛就高了好多,我尝试过使用Excel+VBA以及Stata、R等软件来完成数据地图的填充工作,虽然最后都完美的做出来
对于空间数据,我们感兴趣的往往是其中的某一部分,对于不需要的部分需要做一些掩膜(Mask)。 比如只关注海洋的数值变化,那么陆地上的数值对我其实是一种干扰,就要想办法掩盖掉。又比如我有全国的数据变量,但是只想研究其中某几个省份,那也需要对非相关省份进行掩盖。
对于上一篇PostGIS批量导入栅格数据中导入的气温数据,如何查询指定范围的气温呢? 比如,给定了经纬度范围,如何取出给定月份的数据? 下面的SQL代码给出了查询方法:
本文介绍在ArcMap软件中,导入.mxd地图文档文件后图层出现感叹号、地图显示空白等情况的解决办法。
在 Python 脚本中,您可能需要确定数据集是否确实存在。该任务可以使用 arcpy.Exists()函数完成。返回函数返回一个布尔值True或False,指示该元素是否存在。
Case:需要给一个现有的shp数据创建一个字段,并将属性表中原有的一个文本类型的属性转换为整型后填入新创建的字段。
领取专属 10元无门槛券
手把手带您无忧上云