特征¶

Docs in progress for 'QGIS testing'. Visit https://docs.qgis.org/3.4 for QGIS 3.4 docs and translations.

QGIS提供了许多由核心功能和插件提供的通用GIS功能。下面简要总结了六类一般的特性和插件,然后是对集成的Python控制台的初步了解。

查看数据

您可以查看不同格式和投影中矢量和栅格数据(二维或三维)的组合,而无需转换为内部或通用格式。支持的格式包括:

浏览数据并撰写地图

您可以使用一个友好的图形用户界面来撰写地图和交互地浏览空间数据。GUI中提供的许多有用工具包括:

创建、编辑、管理和导出数据

可以创建、编辑、管理和导出多种格式的矢量和栅格图层。QGIS提供以下功能:

分析数据

您可以对空间数据库和其他受OGR支持的格式执行空间数据分析。QGIS目前提供矢量分析、采样、地理处理、几何和数据库管理工具。您还可以使用集成的草地工具,其中包括400多个模块的完整草地功能。(见章节) Grass GIS集成 或者,您可以使用处理插件,它提供了一个强大的地理空间分析框架,可以从qgis调用本地和第三方算法,如gdal、saga、grass等等。(见章节) 介绍

在Internet上发布地图

QGIS可以用作WMS、WMT、WMS-C或WFS和WFS-T客户端,也可以用作WMS、WCS或WFS服务器。(见章节) 使用OGC数据 此外,您可以使用安装了UMN MapServer或GeoServer的Web服务器在Internet上发布数据。

通过插件扩展QGIS功能

通过可扩展插件架构和可用于创建插件的库,QGIS可以适应您的特殊需求。你甚至可以用C++或Python创建新的应用程序!

核心插件

核心插件包括:

  1. 坐标捕获(在不同的CRS中捕获鼠标坐标)
  2. 数据库管理器(从数据库交换、编辑和查看层和表;执行SQL查询)
  3. EVIS(可视化事件)
  4. 几何检查(检查几何错误)
  5. georeferencer gdal(使用gdal向栅格添加投影信息)
  6. GPS工具(加载和导入GPS数据)
  7. Grass 7(集成Grass GIS)
  8. 元搜索目录客户端(与支持Web(CSW)标准的OGC目录服务的元数据目录服务交互)
  9. 脱机编辑(允许脱机编辑并与数据库同步)
  10. 处理(qgis的空间数据处理框架)
  11. 拓扑检查器(查找矢量层中的拓扑错误)

外部python插件

QGIS提供了越来越多的社区提供的外部python插件。这些插件位于官方插件库中,可以使用python插件安装程序轻松安装。见节 插件对话框 .

Python控制台

对于脚本编写,可以利用集成的python控制台,该控制台可以通过以下方式打开: Plugins ‣ Python Console . 控制台作为非模态实用程序窗口打开。对于与QGIS环境的交互,有 qgis.utils.iface 变量,它是 QgsInterface . 此界面允许访问地图画布、菜单、工具栏和QGIS应用程序的其他部分。您可以创建一个脚本,然后将其拖放到qgis窗口中,它将自动执行。

有关使用python控制台以及对qgis插件和应用程序进行编程的更多信息,请参阅 QGIS python控制台Pyqgis开发人员食谱 .

已知问题

打开文件数限制

如果您要打开一个大型的QGIS项目,并且您确信所有层都有效,但是某些层被标记为不好,那么您可能面临这个问题。Linux(和其他OSS,同样)按进程限制打开的文件。资源限制是按进程和继承的。这个 ulimit 命令是shell内置的,它只更改当前shell进程的限制;新的限制将由任何子进程继承。

您可以通过键入以下内容查看所有当前ulimit信息:

$ ulimit -aS

您可以在控制台上使用以下命令查看每个进程当前允许打开的文件数:

$ ulimit -Sn

更改 现有会话, 您可能可以使用以下内容:

$ ulimit -Sn #number_of_allowed_open_files
$ ulimit -Sn
$ qgis

永久修复它

在大多数Linux系统上,登录时资源限制由 pam_limits 模块根据中包含的设置 /etc/security/limits.conf/etc/security/limits.d/*.conf . 如果您有根权限(也可以通过sudo),您应该能够编辑这些文件,但是在任何更改生效之前,您需要重新登录。

更多信息:

https://www.cyberciti.biz/faq/linux-increase-the-maximum-number-of-open-files/ https://linuxaria.com/article/open-files-in-linux