17个开源GIS软件,看你用过几个?
任何事物都有时空属性,都与空间信息相关,地理信息无处不在。GIS以空间数据为基础,航天、地面、地表、地下等都是GIS所研究的领域。我们在工作和生活中所接触到的各种地图制图工具及在线地图产品,仅仅是GIS的冰山一角。
其实,GIS从最初的地图制图发展至今,已广泛应用于国土、气象、矿产、农林、市政等专业领域,以处理和分析各个行业面临的业务问题并辅助其进行决策。
GIS究竟能做什么呢?
以大众应用为例。GIS首先就是用于收集地理信息,人类的绝大部分活动都与地理位置有关,比如想和朋友找个餐厅吃饭,周末想找个**院看**,到一个陌生的城市出差找宾馆……这些都涉及地理信息。
GIS发展至今,紧跟IT相关技术的步伐,从单机桌面工具到互联网Web在线应用,再到移动端便携应用;在各类应用需求的驱动下,从简单的制图到二维GIS应用,从25D到3D的进步,甚至全空间真三维的突破。GIS在短短几十年中迅速发展、蜕变。GIS应用渗透到各行各业,分别在横向与纵向逐步扩大应用的广度和深度,成为我们创建智慧城市和智慧地球的中坚力量。
17个常见的开源GIS平台及软件
得益于互联网的发展,WebGIS快速发展前进,开发工具与平台也呈现出百花齐放之势。
更多的人开始关注WebGIS应用,很多开发者投身于GISer大军,催生了众多开源GIS项目,推动WebGIS的普及,在此我们分享17个常见的开源GIS平台及软件,看看你用过几个?
1、uDig
uDig是一个开源的桌面应用程序框架(见图),是构建在Eclipse RCP和 GeoTools(一个开源的Java GIS工具包)上的桌面GIS。uDig作为一款开源桌面GIS软件,基于Java和Eclipse平台,可以进行shp格式地图文件的编辑和查看;是一个开源空间数据查看器与编辑器,对OpenGIS标准、WebGIS、网络地图服务器和网络功能服务器有特别的加强。
2、QGIS
QGIS是一个用户界面友好的桌面GIS,可以运行在Linux、UNIX、Mac OSX和 Windows等平台之上。QGIS是基于Qt(跨平台的图形工具软件包),使用C++语言开发的一个用户界面友好、跨平台的开源版桌面地理信息系统,如图所示。
3、GeoServer
GeoServer是 OpenGIS Web服务器规范的J2EE实现,利用GeoServer可以方便地发布地图数据,允许用户对数据进行更新、删除、插入操作,通过GeoServer可以比较容易地在用户之间迅速共享地理信息。GeoServer是社区开源项目,可以直接通过社区网站下载相关资料,如图所示。
GeoServer支持OGC标准规范的系列服务,支持PostgreSQL、MySQL等数据库,以及ArcSDE、ShapeFile等中间件和文件资源,能够将网络地图输出为JPEG、PNG、KML等多种和数据格,可以运行在任何基于J2EE/Servlet的容器之上,支持多种客户端框架,如Openlayers等。
4、MapServer
MapServer是美国明尼苏达大学在20世纪90年代利用C语言开发的开源WebGIS项目。MapServer是一套基于胖服务器端/瘦客户端模式的实时地图发布系统,客户端发送数据请求时,服务器端实时地处理空间数据,并将生成的数据发送给客户端MapServer时核心部分是C语言编写的地图操作模块,它的许多功能都依赖一些开源或免费的库。MapServer遵循OGC系列规范,可以集成PostGIS和开源数据库PostgreSQL,并对地理空间数括进行存储和SQL查询操作,同时还支持其他客户端API实现地理空间数据的传输与表达。
5、OpenLayers
OpenLayers是一个专为WebGIS客户端开发提供的JavaScript类库包,用于实现地图数据的网络访问。它访问地理空间数据的方法都符合行业标准,支持各种公开的和私有的数据标准和资源。OpenLayers采用纯面向对象的JavaScript方式开发,同时借用了Prototype框架和Rico库的一些组件。
OpenLayers是一个开源的项目,其设计之意是为互联网客户端提供强大的地图展示功能,包括地图数据显示与相关操作,具有灵活的扩展机制。目前,OpenLayers已经成为一个拥有众多开发者和帮助社区的成熟、流行的框架。
目前OpenLayers2已经升级为OpenLayers3,可以从其官方网站下载相关资源,如图所示。
6、OpenScales
OpenScales是一个基于Flex的优秀的前台地图框架,可以用来开发各种网络版、手机版和桌面版地图程序。OpenScales是基于ActionScript3和 Flex编写的,能够支持各种标准的地图服务,如WMS、WFS、WMTS、OSM等。它是开源的、免费的客户端开发框架,基于LGPL开源协议,它在FlashPlayer中运行,可以在各个浏览器中使用,具有很好的跨平台特性。
OpenScales作为一个开源的GIS客户端框架,具有非常大的应用潜力,可以从其官方网站下载相关资源。OpenScales可以看成对OpenLayers的 ActionScript翻译,所以在学习OpenScales时可以适当参考OpenLayers的官方教程。相比之下,虽然OpenLayers的教程也是英文的,不过非常详细,提供的示例也远比OpenScales的官方教程丰富。
7、gvSIG
gvSIG也是一个跨平台的桌面GIS软件,于2004年在西班牙成为了开源GIS软件。稳定版本是20。
该系统适用于Windows、Linux、OS X操作系统;不仅能够访问本地的矢量数据或者栅格数据,而且也能够通过支持开放地理空间信息联盟(OGC)规范的远程服务器访问该类数据。
支持网络地图服务(WMS)、网络要素服务(WFS)、网络覆盖服务(WCS)、目录服务以及地名辞典服务等一系列地理信息网络服务规范,这是gvSIG与其它地理信息系统的特大区别。此外,它也能够访问ESRI公司的ArcIMS服务提供的远程数据。
gvSIG CAD可以跟踪的几何图形,然后编辑顶点分裂线和多边形;gvSIG移动带来了手机GIS应用,适合现场作业。gvSIG能够支持以下数据格式:矢量格式(Shapefile、DXF、DGN、DWG)、栅格格式(ECW、MrSID、JPEG、jp2、TIFF、geoTIFF、PNG、GIF)和基于XML的格式(KML、GML)。
8、Whitebox GAT
Whitebox GAT是一个地理空间分析工具箱的桌面GIS软件。它主要是将桌面GIS和遥感软件包综合来进行地理空间分析和数据可视化应用。它被认为是替代的地形分析系统(TAS),旨在提供先进的地理空间数据分析,在环境研究和地理信息行业进行应用,也能够进行地理信息教育工具。实际上取代了地形分析系统——hydro-geomorphic应用程序的工具。
通过激光雷达的数据,可以进行转换、分析、管理、缓冲和提取地理空间信息。这个神奇的免费GIS软件在GIS行业几乎是闻所未闻的。
9、SAGA GIS
一个经典的免费系统自动分析的GIS软件。主要进行地形分析、流域提取和可见性分析,尤其地形分析上是其最霸气的应用;它也在环境建模和形态测量方面可以进行地形湿度指数和地形位置分类等应用。SAGA与一个特殊的应用程序编程接口(API的)地理数据处理。这个API可以很容易实施的新算法。它的API支持网格数据,矢量数据,并表。
SAGA GIS的强大还在于它使多个窗口列出你所有的分析(地图、直方图、散点图、属性等),提供了一个友好的GUI和API。总之,快速、可靠和准确是它的魅力。
10、GRASS GIS
GRASS GIS(Geographic Resources Analysis Support System)是开源代码的地理资源分析支持系统,可用于处理栅格、拓扑矢量、影像和图表数据;优势尤其在于选择分析、图像处理、数字地形操作和统计数据。
GRASS最早是由美国陆军工程兵团作为土地管理和环境规划的工具。在GPL下发布,可以在多个平台上运行,包括Mac OS X、Windows和Linux。用户可以通过图形用户界面使用该软件功能;也可以通过改进直接使用它的模块。当前的GRASS6版本采用新的拓扑2D/3D矢量引擎并支持矢量网络分析。该系统可以胜任3D矢量图形数据和立体像素的可视化,也支持线性参考系统。
GRASS是开源地理空间基金会最初的八个软件项目之一。由于它的直观和可靠性,它已经广泛用于不同的领域(学术界、环境咨询公司和政府机构),例NASA、美国国家海洋和大气管理局、美国农业部和美国地质调查局等。
11、MapWindow
MapWindow是一个基于标准的桌面GIS软件,它的90%的用户关注其地图查看器、识别特性、处理工具和打印等特性。
MapWindow GIS项目包含了兼容微软视窗的桌面应用,能够查看shapefile和多种栅格数据格式。它可以通过“GIS工具”插件重生成数据、剪辑、合并,及执行其它地处理。开发用户可以使用任何NET框架语言书写插件扩展此应用,或使用MapWinGUS ActiveX控制书写GIS软件。其TauDEM功能更是自动描述分水岭。
12、ILWIS
ILWIS是一个土地和水资源综合信息管理的开源GIS软件。它主要被生物学家、水资源管理者和地理空间管理者广泛使用。ILWIS擅长数字化、编辑、显示地理数据和生成地图;也用于遥感图像分类、增强和光谱波段操作。
ILWIS最初是在荷兰的供其研究人员和学生使用。自2007年7月1日,它结合集成的矢量和栅格软件程序,已作为免费软件被许多学生、教师和研究人员使用。ILWIS有非常强大的栅格分析模块、高精密和灵活的向量和点数字化模块,集合多种非常实用的工具。在许多方面与GRASS GIS类似,ILWIS目前只能在微软的Windows下使用。
13、GeoDa
GeoDa是跨平台的开源版本,主要进行空间数据分析。其主要功能是地质统计和空间建模。开源的GeoDa可以在Windows(包括XP,Vista中和7)、Mac OS和Linux上运行。它是哈佛大学,麻省理工大学和康奈尔大学的重要分析工具。
GeoDa具有强大的功能来执行空间分析,多元探索性数据分析,以及全球和当地的空间数据。它还执行基本的线性回归、空间模型,也可用于一系列经济发展健康和房地产等领域。
14、OpenJump
OpenJUMP可以很好地处理大型数据集,并呈现大量的数据图(如饼图、绘制等值线图等)。基于JAVA平台可以读取栅格和可视化框架计算机程序。它可以在Windows,Linux和Mac平台上工作,尤其是在运行Java15或更高版本的操作系统上运行。
OpenJUMP的插件增强了其功能,有(绘图和几何)编辑、光栅、印刷、web处理、空间分析、GPS、属性查询、可缩放矢量图形(SVG)格式的影像输出和数据库等应用。它不只是一个免费的演示浏览器,也可以编辑,保存,分析等。它为地理信息系统的API提供了灵活插件结构,从而使新的功能能比较容易进行。
15、Diva GIS
DIVA GIS是用于制图和地理数据分析的GIS软件。它专门从事生物的丰富性和多样性的数据分析;它可以提取气候和土地的所有位置数据、进行统计分析和建模;此外,它可以定位国家的界限,河流,卫星图像,并在观察到动物物种的位置,从而为生物学的研究提供了小面积范围的地图。
16、FalconView
FalconView主要有便携式飞行计划软件(PFPS)的功能,这使得它可以用于战斗飞行计划,所以它的大部分用户来自美国国防部和其他国家地理空间情报机构。它支持各种类型的显示数据,如卫星、激光雷达、频率和MrSID。在SkyView模式中,甚至可以使用MXD文件。
它可以参考各种类型的地图和地理信息,最重要的是在航图、卫星图像和高程图方面。目前用户以军事任务执行人员、飞行员、航空技术支持人员为主。目前的FalconView的一部分XPlan,主要用于美国国防部的任务规划系统和佐治亚技术研究所的计划活动配套方案中。它可用于Windows系列操作系统;而Linux和移动操作系统的版本正在开发中。
17、OrbisGIS
OrbisGIS是一个半成品的开源GIS软件。它提供了新的方法和技术进行建模,它可以处理和共享空间数据,以便于监测地理领土和管理。OrbisGIS能够处理矢量和栅格数据模型。在执行如噪声地图、水文过程等定位应用上,它可以没有任何插件,只是有时间周期限制。
它可以在生态、环境可持续发展的相关性上,使用系统化的方法,进而评估公共政策。但是,这种做法必须考虑到相关的环境、社会和经济因素,以促进其有效的决策和规划。作为包含分析工具,它可以在不同的时间和空间尺度下,计算各项指标,生成综合性的建模;这些都将使OrbisGIS成为不可或缺的工具。
尽管开源的GIS平台为二次开发提供了更多可能性,也给广大GISer带来了便利,但是只能满足一部分webGIS开发需求,无法应对更多面向大众的互联网应用。所以在学习开源GIS平台的同事,也应该熟悉专业的GIS平台,相互补充。
程序设计中的框架包含DoitPHP(原Tommyframework)是一个基于BSD开源协议发布的轻量级PHP框架,还包含如thinkphp、codeigniter(简称CI)、yii framework、doophp、qeephp、等主流的程序设计框架,根据个人习惯和性能要求,其各也有不同的优缺点。
从软件设计角度,框架是一个可复用的软件架构解决方案,规定了应用的体系结构,阐明软件体系结构中各层次间及其层次内部各组件间的毅力关系,责任分配和控制流程,表现为一组接口,抽象类以及实例间协作的方法。
框架是指对特定应用领域中的应用系统的部分设计和实现子系统的整体结构。
框架将应用系统划分为类和对象,定义类和对象的责任,类和对象如何互相协作,以及对象之间的控制线程。这些共有的设计因素由框架预先定义,应用开发人员只须关注于特定的应用系统特有部分。框架刻画了其应用领域所共有的设计决策,所以说框架着重于设计复用,尽管框架中可能包含用某种程序设计语言实现的具体类。
互联网是个神奇的大网,ERP管理系统也是一种模式,这里提供最详细的报价,如果你真的想做,可以来这里,这个手机的开始数字是一八七中间的是三儿零最后的是一四二五零,按照顺序组合起来就可以找到,我想说的是,除非你想做或者了解这方面的内容,如果只是凑热闹的话,就不要来了
因为软件系统发展到今天已经很复杂了,特别是服务器端软件,涉及到的知识,内容,问题太多。在某些方面使用别人成熟的框架,就相当于让别人帮你完成一些基础工作,你只需要集中精力完成系统的业务逻辑设计。而且框架一般是成熟,稳健的,可以处理系统很多细节问题,比如,事物处理,安全性,数据流控制等问题。还有框架一般都经过很多人使用,所以结构很好,所以扩展性也很好,而且它是不断升级的,可以直接享受别人升级代码带来的好处。
所谓框架就是一个可以被广泛应用的架构(如MVC),通常是大家常用而又没什么变化的东西,人们就把它框架,让大家节省时间。比如ThinkPHP就 是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。最早诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。早期的思想架构来源于Struts,后来经过不断改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和MVC模式,融合了Struts的Action和Dao思想和JSP的TagLib(标签库)、RoR的ORM映射和ActiveRecord模式,封装了CURD和一些常用操作,单一入口模式等,在模版引擎、缓存机制、认证机制和扩展性方面均有独特的表现
Yui-ext基于Yahoo UI的扩展包yui-ext是具有cs风格的web用户界面组件,能实现复杂的Layou布局,界面效果可以和backbase比美,而且使用纯JavaScript代码开发。真正的可编辑的表格edit Grid,支持XML和Json数据类型。许多组件实现了对数据源的支持,如动态布局,动态加载Tree控件,动态拖拽效果等等。从10beta版开始同jQuery合作,推出基于jQuery的ext10,提供了更多有趣的功能。优点:结构化,清晰明了,底层用到了jQuery的一些函数,使整合使用有了选择,最重要的一点是界面太 让人震撼了。缺点:太过于复杂,整个界面的构造过于复杂。Jquery任何使用场景都适用;jQuery是一款同prototype一样优秀的js开发类库,特别是针对css和xpath的支持,使我们写JS变得更加方便。优点:注重简洁和高效,js效果有yui-ext的选择,因为yui-ext重用了很多jquery的函数;缺点:据说太嫩,历史不悠久。Extjs 内部系统,后台系统,管理系统等,有很好的UI设计;Dojo功能是最为强大的JS框架,Dojo是一个用JavaScript编写的开源的DHTML工具箱。Dojo包括Ajax、browser、event、widget等跨浏览器API,包括了js本身的语言扩展,以及各个方面的工具类库,和比较完善的UI组件库。Dojo强大的地方在于界面和特效的封装,可以 让开发者快速构建一些兼容标准的界面。适合企业应用和产品开发;优点:库相当完善,发展时间也比较长,得到sun和IBM的持。缺点:文件体积比较大,200多kb,JS语法增强方面不如prototype。Prototype最成熟的框架;定义了JS的面向对象扩展,Dom操作API,事件等等,以prototype为核心,形成一个外围的各种各样的JS扩展库;优点:基本底层,易学易用,甚至是其他一些JS特效开发包的底层,体积算是最小的;缺点:如果说缺点,可能就是功能是它的弱项;
1Aliceui
Aliceui是支付宝的样式解决方案,是一套精选的基于 spm 生态圈的样式模块集合,是 Arale 的子集,也是一套模块化的样式命名和组织规范,是写 CSS 的更好方式。
gitHub地址:https://githubcom/aliceui/aliceuigithubio
2Amazeui
Amaze UI 是一个轻量级、 Mobile first 的前端框架, 基于开源社区流行前端框架编写的。
官网地址:http://amazeuiorg/
3sui
SUI是一套基于bootstrap开发的前端组件库,同时她也是一套设计规范。
通过SUI,可以非常方便的设计和实现精美的页面。
官网地址:http://suitaobaoorg/
同时sui还有移动端版本msui,msui是阿里巴巴共享业务事业部UED团队的作品。目的是为了手机H5页面提供一个常用的组件库,减少重复工作。
地址:http://msuitaobaoorg/
4FrozeUI
Frozen UI是一个开源的简单易用,轻量快捷的移动端UI框架。基于手Q样式规范,选取最常用的组件,做成手Q公用离线包减少请求,升级方式友好,文档完善,目前全面应用在腾讯手Q增值业务中。
官网地址:http://frozenuigithubio/
5uiKit
uiKit是一款轻量级、模块化的前端框架,可快速构建强大的web前端界面。
官网地址:http://wwwgetuikitnet/
6H-ui
H-ui是轻量级前端框架,简单免费,兼容性好,适用于中国网站。
官网地址:http://wwwh-uinet/
7Weui
weUI 是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信 Web 开发量身设计,可以令用户的使用感知更加统一。包含button、cell、dialog、 progress、 toast、article、actionsheet、icon等各式元素。
官网地址:https://githubcom/weui/weui
8layui
Layui 诞生于2016年金秋,是一款带着浓烈情怀的国产前端UI框架,她追求极简,又不失丰盈的内在,说她是史上最轻量的结晶,似乎并不为过。一切都源自于她对原生态的执着,对前端社区的那些噪杂声音的过滤,以及她本身的精心雕琢。
官网地址:http://wwwlayuicom/
9YDUI Touch
YDUI Touch 专为移动端打造,在技术实现、交互设计上兼容主流移动设备,保证代码轻、性能高;使用 Flex 技术,灵活自如地对齐、收缩、扩展元素,轻松搞定移动页面布局;实现强大的屏幕适配布局,等比例适配所有屏幕。什么?用得不开心?轻松切换 px;自定义Javascript组件、Less文件、Less变量,定制一份属于自己的YDUI;
17个开源GIS软件,看你用过几个?
本文2023-11-21 03:37:08发表“资讯”栏目。
本文链接:https://www.lezaizhuan.com/article/519603.html