QGIS介绍

一.基本概念

QGIS的官方网站为:https://www.qgis.org
Github地址:https://github.com/qgis/QGIS
QGIS采用开源证书GNU GPLv2 (GNU General Public License version 2)发布,主要采用C++语言开发,用户界面依赖Qt平台。

二.QGIS核心功能

作为一个完整的地理信息系统桌面软件,QGIS的主要功能包括数据浏览、地图制图、数据管理与编辑、空间数据处理与空间分析、地图服务等功能框架。
(1) 数据浏览功能
QGIS创立的初衷就是提供一个简单的地理空间数据浏览工具,因此数据浏览功能是QGIS的核心功能。QGIS既可以利用内嵌GDAL/ORG和GRASS支持常见的数据格式,也可以读取PostGIS、SpatiaLite、MS SQL Spatial、Oracle Spatial等存储于数据库中的地理空间数据。另外,QGIS还可以访问符合WMS、WMTS、WCS、WFS等OGC标准的互联网空间数据服务。某些数据虽然无法被原生QGIS软件读取,但它们可以通过插件扩展的方式被读取。因此,相对于ArcGIS、GRASS GIS等桌面软件,QGIS的数据支持能力非常强。
(1)地图制图功能
QGIS具有非常强大的地图表达和渲染能力,甚至可以进行简单的3D渲染。在OpenGIS中,QGIS包含完整的符号化、地图标注、输出与打印功能。特别是,QGIS具有实时渲染和优秀的抗锯齿能力。在一定程度上,QGIS的制图能力远超绝大多数的GIS软件,在某些方面甚至超越了ArcGIS软件。
(2)数据管理与编辑功能
受益于QGIS的数据支持能力,QGIS可以管理不同数据源的地理空间数据。这些不同数据源的数据在QGIS中具有相同的数据接口,不同数据类型的空间数据可以轻而易举地进行格式转换。我们可以通过QGIS完整的矢量编辑功能对这些数据进行增、删、改、查等操作及基本矢量叠加运算。

(3)空间数据处理与空间分析功能
空间分析实际上属于空间数据处理的一部分。QGIS的空间数据处理与空间分析功能较弱,但是QGIS整合了GDAL/OGR、GEOS、GRASS GIS、SAGA GIS等GIS工具。因此,QGIS的优势在于可以对来源不同的空间数据处理工具进行整合,利用QGIS中的Processing Modeler、PyQGIS和C++ API构建自动化的数据处理工具,以解决复杂的地理与空间问题。
(4)地图服务功能
QGIS可以作为WMS、WMTS客户端,QGIS Server可以作为轻量级WMS、WCS、WFS服务器。如果QGIS Server不能满足需求,则可以通过MapServer构建复杂的GIS服务器。
实际上,QGIS还可以通过功能扩展的方式提供更高级、更复杂的功能。开发者可以根据需求的复杂度,通过下表介绍的几种方式进行功能扩展。

在这里插入图片描述

三.QGIS支持的数据源

QGIS能够支持读取和浏览各种格式地理空间数据。主要体现在文件数据源的读取、数据库数据源的读取。QGIS文件数据源是指以文件形式存储的各种地理空间数据,其读取和写入主要依赖GDAL/OGR库。

QGIS支持主要文件类型说明

在这里插入图片描述

三.QGIS与ARCGIS对比

QGIS与ArcGIS具有很多相似之处,例如,QGIS浏览器(Browser)对应ArcGIS中的ArcCatalog,QGIS处理工具箱(Processing Toolbox)对应ArcGIS中的ArcToolbox等。除了开源与商业的区别,QGIS与ArcGIS之间还存在功能性、开发难度、稳定性等方面的区别。
在这里插入图片描述
参考文章:https://blog.csdn.net/aerors321/article/details/121481444

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/675694.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

PlantUML绘制UML图教程

UML(Unified Modeling Language)是一种通用的建模语言,广泛用于软件开发中对系统进行可视化建模。PlantUML是一款强大的工具,通过简单的文本描述,能够生成UML图,包括类图、时序图、用例图等。PlantUML是一款…

【Linux】线程

线程 我们常常会在linux中或者在操作系统这门课中听到进程和线程的名称,我们之前认识了进程的概念,现在我们来了解一下线程的概念 线程概念: 什么是线程 在一个程序里的一个执行路线就叫做线程(thread)。更准确的定…

Linux命令-base64命令(编码/解码文件或标准输入输出)

说明 base64将 文件 或 标准输入 编码或解码为标准输出; 语法 base64 [OPTION]... [FILE]参数 -d, --decode # 解码 -i, --ignore-garbage # 解码时,忽略非字母字符 -w, --wrapCOLS # 在指定的字符数后自动换行(默认为76), 0 为禁用自动换行--help # 显示此帮助…

k8s 部署java应用 基于ingress+jar包

k8 集群ingress的访问模式 先部署一个namespace 命名空间 vim namespace.yaml kind: Namespace apiVersion: v1 metadata:name: ingress-testlabels:env: ingress-test 在部署deployment deployment是pod层一层封装。可以实现多节点部署 资源分配 回滚部署等方式。 部署的…

牛客网SQL进阶127: 月总刷题数和日均刷题数

官网链接: 月总刷题数和日均刷题数_牛客题霸_牛客网现有一张题目练习记录表practice_record,示例内容如下:。题目来自【牛客题霸】https://www.nowcoder.com/practice/f6b4770f453d4163acc419e3d19e6746?tpId240 0 问题描述 基于练习记录表…

OpenAI使用的海量数据集介绍

1. OpenAI使用的数据 OpenAI为了训练其尖端的自然语言处理模型,如GPT-4,采用了极为庞大的数据集。虽然具体的细节可能不完全公开,但我们可以根据历史信息和公开报道推测,这些数据集通常包含: WebText:早期…

ComfyUI 学习笔记

目录 ComfyUI 入门教程 什么是ComfyUI? windows安装教程: 组件技巧学习 ComfyUI 入门教程 老V带你学comfyUI-基础入门 - 知乎 什么是ComfyUI? ComfyUI 是一个基于节点的 GUI,用于Stable Diffusion。你可以通过将不同的no…

conda创建环境,查看环境,激活环境,查看包,复制环境,删除环境,查看cuda版本,查看pytorch版本

创建环境 conda create --name [yourEnvname]查看环境 conda env list首次激活 conda 虚拟环境,使用source activate激活,以后可以使用 conda activate 激活虚拟环境 source activate [yourEnvname]激活环境 conda activate [yourEnvname]查看环境下…

基于SSM的图书馆预约占座系统(有报告)。Javaee项目。ssm项目。

演示视频: 基于SSM的图书馆预约占座系统(有报告)。Javaee项目。ssm项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构,通过Spring…

java基础(2) 面向对象编程-java核心类

面向对象 面向对象对应的就是面向过程, 面向过程就是一步一步去操作,你需要知道每一步的步骤。 面向对象的编程以对象为核心,通过定义类描述实体及其行为,并且支持继承、封装和多态等特性 面向对象基础 面向对象编程&#xff0…

HARRYPOTTER: FAWKES

攻击机 192.168.223.128 目标机192.168.223.143 主机发现 nmap -sP 192.168.223.0/24 端口扫描 nmap -sV -p- -A 192.168.223.143 开启了21 22 80 2222 9898 五个端口,其中21端口可以匿名FTP登录,好像有点说法,百度搜索一下发现可以用anonymous登录…

L1-088 静静的推荐

一、题目 二、解题思路 如果有的学生天梯赛成绩虽然与前一个人相同,但其参加过 PAT 考试,且成绩达到了该企业的面试分数线,则也可以接受——同一批次这样的人可以有多个!!!如果 pta 分数不低于 175 &#…

智慧工地安全带识别检测系统-准确识别有无佩戴安全带-及时预警---豌豆云

安全带佩戴识别系统对视频监控画面开展实时分析识别。当视频画面出现工作员未佩戴安全带时,安全带佩戴识别系统主动触发告警提示,并通过短信、邮件、报警语音等方式进行通知。 安全带是建筑工地的作业人员工作必备的安全防护设备,按标准佩戴…

QT初始程序

#include "widget.h"#include <QApplication>int main(int argc, char *argv[]){QApplication a(argc, argv);Widget w;w.show();return a.exec();} 解释&#xff1a; Qt系统提供的类头文件没有.h后缀Qt一个类对应一个头文件&#xff0c;类名和头文件名一致QA…

手把手教你开发Python桌面应用-PyQt6图书管理系统-图书添加模块UI设计实现

锋哥原创的PyQt6图书管理系统视频教程&#xff1a; PyQt6图书管理系统视频教程 Python桌面开发 Python入门级项目实战 (无废话版) 火爆连载更新中~_哔哩哔哩_bilibiliPyQt6图书管理系统视频教程 Python桌面开发 Python入门级项目实战 (无废话版) 火爆连载更新中~共计24条视频&…

如何写一个其他人可以使用的GitHub Action

前言 在GitHub中&#xff0c;你肯定会使用GitHub Actions自动部署一个项目到GitHub Page上&#xff0c;在这个过程中总要使用workflows工作流&#xff0c;并在其中使用action&#xff0c;在这个使用的过程中&#xff0c;总会好奇怎么去写一个action呢&#xff0c;所以&#xff…

Linux线程 分离和同步与互斥 条件变量

Linux线程 分离和同步与互斥 条件变量 1. 分离线程2. 线程互斥与互斥量3. 线程同步与竞态条件4. pthread库与条件变量5. 生产者-消费者 1. 分离线程 什么是线程分离&#xff1f; 线程分离是指线程在结束时&#xff0c;操作系统会自动回收其资源&#xff0c;而无需其他线程显式地…

Java:内部类、枚举、泛型以及常用API --黑马笔记

内部类 内部类是类中的五大成分之一&#xff08;成员变量、方法、构造器、内部类、代码块&#xff09;&#xff0c;如果一个类定义在另一个类的内部&#xff0c;这个类就是内部类。 当一个类的内部&#xff0c;包含一个完整的事物&#xff0c;且这个事物没有必要单独设计时&a…

[职场] 进入大数据领域需要掌握哪些软件 #其他#职场发展#职场发展

进入大数据领域需要掌握哪些软件 学习大数据首先我们要学习Java语言和Linux操作系统&#xff0c;这两个是学习大数据的基础&#xff0c;学习的顺序不分前后。 Java 大家都知道Java的方向有JavaSE、JavaEE、JavaME&#xff0c;学习大数据要学习那个方向呢? 只需要学习Java的…

2024 年 6 款值得推荐的 iOS 系统恢复软件

iPhone 以其时尚的设计、用户友好的界面和强大的性能而闻名。然而&#xff0c;没有任何技术能够避免错误和故障&#xff0c;iPhone 也不例外。作为 iPhone 用户&#xff0c;您可能遇到过各种可能导致设备故障的问题。虽然 Apple 提供了多种解决方案来解决这些问题&#xff0c;但…