基于QGIS初探PostgreSQL的PostGIS插件,包括YUM和编译安装PostGIS

写在前面:本文介绍 QGIS,只是为了展示怎么使用 PostGIS,因作者本人追求的是 PostgreSQL,所以本文的重点还是 PostGIS 这个 PostgreSQL 的插件,QGIS软件只做简单介绍,留给地理空间开发工程师研究吧。在学这篇文章之前,我也只是小白,都是在网上边学边实验边记录的,写这篇文章花了我整整3天的时间,在PostGIS编译安装的时候走了不少弯路,文章如有错误或侵权的,望留言指出,立即改正。

除 QGIS 外,其他支持 PostGIS 的软件详见:https://trac.osgeo.org/postgis/wiki/UsersWikiToolsSupportPostgis

简介

QGIS (原称Quantum GIS)是一个方便使用的免费开源且跨平台的桌面GIS软件,可运行在 Windows、Linux、MacOS 和 BSD 上,并支持众多矢量、栅格、和数据库格式及功能。

QGIS的最大特点在于界面很友好,熟悉ArcGIS的人都能很快的掌握QGIS的操作,支持WMS并无缝集成PostGIS(对象-关系型数据库管理系统),几乎完全照搬了GRASS的分析功能,因此其分析功能也很强大。相比于商业GIS软件,QGIS的文件体积更小,需要的内存和处理能力也更小,因此它可以在旧的硬件上或CPU运算能力被限制的环境下运行,是一款轻量化的桌面GIS软件。

QGIS的官网:https://www.qgis.org/en/site/

438c981d58d624eb1ccdcad8d1c284db.png

PostGIS 也是免费开源的,PostGIS通过向PostgreSQL添加对空间数据类型、空间索引和空间函数的支持,将PostgreSQL数据库管理系统转换为空间数据库。

因为PostGIS是建立在PostgreSQL之上的,所以PostGIS自动继承了重要的"企业级"特性以及开放源代码的标准。

可以说PostGIS仅仅只是PostgreSQL的一个插件,但是它将PostgreSQL变成了一个强大的空间数据库!

关于 PostGIS 更多介绍以及为什么使用 PostGIS,参考这个文章或自行百度:https://zhuanlan.zhihu.com/p/62034688,本文部分介绍性文字也是截取此处。

  • PostGIS的官网:http://postgis.net/

  • PostGIS的WIKI:https://trac.osgeo.org/postgis/wiki

  • Developers PostGIS Wiki: https://trac.osgeo.org/postgis/wiki/DevWikiMain

QGIS 的简单操作

QGIS的官网下载独立安装版,Windows上安装比较简单,直接下一步就行,在QGIS软件安装完成后,再在QGIS中安装以下两个插件。

1.安装QGIS的坐标转换插件 GeoHey Toolbox

15d096356070287e8ad196a289e38c61.png
42bb7a46fec91084e0e8d42ecc7e160e.png

2.安装QGIS的底图插件Quick Map Services

9b3bbafe71b891ec94bae4bab4f3fab2.png

配置底图。

5222b6199b30af92c8d1c61ea48499a8.png

此时只有一个OSM的标准底图,可以在 Settings 中 Get 更多的底图。

427ecb8732ec88d449126159198e5130.png

更多的底图也是有的能用,有的只能在国外网才能用。

fd5e4434030accd5031959d3423978ec.png

本示例选用了 ESRI 的 ESRI Gray (dark) 作为底图。

bd0ab9578013398f4bfd91c92f2d7b58.png

3.下载全国路网数据

可通过OSM Geofabrik项目下载中国水系、道路路网、建筑物、湖泊河网数据,数据坐标系为WGS84,下载地址:http://download.geofabrik.de/asia/china-latest-free.shp.zip 。

gis_osm_roads_free_1.shp :# 全国公路路网数据
gis_osm_railways_free_1.shp:# 全国铁路网数据
gis_osm_waterways_free_1.shp:# 全国河流网数据
gis_osm_water_a_free_1.shp:# 全国湖泊数据

4.QGIS上展示全国路网数据

将想要展示的shp文件拖到 QGIS 中就能展示,如下展示全国铁路网数据。

f97f6cab23febf8ed05a4ff3d088767a.png
d622301263fbaec0ab292012ddb6ac6e.png

使用PostGIS来存储 Shapefiles 文件的数据

自 GIS 软件被首次编写以来,Shapefile(和其他文件格式)一直是空间数据的存储和交互的标准方式。

598eb9fcdfebbf5387bce3b792816e80.png

但是,这些平面文件还存在以下缺点:

  • 文件需要特殊的应用程序才能读写 —— SQL是对随机数据访问和分析的抽象。如果没有这种抽象,你将需要自己编写所有的访问和分析数据的代码

  • 并发操作可能导致损坏数据 —— 虽然可以编写额外的代码以确保对同一文件的多次写入不会损坏数据,但当你解决了问题并同时解决了相关性能问题时,你已经编写了数据库系统的较多部分。那为什么不直接使用标准数据库呢?

  • 复杂的问题需要复杂的应用程序来回答 —— 复杂而有趣的空间分析问题(空间连接、聚合等)可以在数据库中使用一行SQL代码来表达,但是在对文件进行编程时,需要数百行专门的代码来解决。

  • 大多数 PostGIS 用户都在建立多个应用程序访问数据的系统,因此,使用标准的SQL访问方法可以简化部署和开发。

  • 有些用户正在处理大型数据集,如果使用文件存储,它们可能被分成多个文件;但在数据库中,它们可以存储在单个大的二维表中。

总之,对多个用户的支持,复杂的即时查询和对于大型数据集的高性能表现,是空间数据库比文件系统的优越之处。

1.Windows平台下载安装 PostGIS 插件

相对 Linux 平台,对于 Windows 平台的 EDB,安装 PostGIS 插件还是比较简单的,安装数据库软件完成后可以在 Stack Buider 中直接安装 PostGIS。

6cf33547aef54d2d66e2207d3cd7cd8a.png
abe3045165b8b6e7af6afa294a09320a.png
2e2bc9ac88deb0ce2dac6e8f1cb4ce42.png
34a4625c8c159a914bbb61b6d6b6133e.png

下载速度不是很快!!下载完成后直接安装。

1cfcd6d442752c3ad058dcb3f2674c07.png
6896cc5e6db5d525243c519f636a7854.png
f59c2ddadb0692ebe92fdb3b12f81f4e.png

出现对话框都点“是”,直到安装完成。

出现个小插曲,我的数据库用户密码输入错误了,可以先完成 PostGIS 插件的安装,安装完成后执行它的建库脚本就行了。

15508679e9fb7d291a7e4939b973697a.png
<

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值