12. 常用工具

12.1. 上下文帮助

每当您需要详细的主题帮助时,可以通过对话框中的 帮助 按钮访问当前用户手册中的相应页面 --- 请注意,第三方插件指向专用Web页面。

12.2. 面板

QGIS默认提供了许多面板供您使用。下文对其中部分面板进行了描述,而其他面板可在文档的不同部分找到。QGIS提供的默认面板的完整列表可通过 视图 ► 面板 ► 菜单访问,在 面板 中对提到的面板进行了详细介绍。

12.2.1. 图层面板

图层 面板 (也称为 地图图例) 列出了该工程的所有图层,并帮助您管理其可见性和设计地图。按 Ctrl+1 可以显示或隐藏面板。

图层 面板的顶部,有一个工具栏可用于:

  • symbology 打开图层样式停靠栏 (F7): 切换 图层样式 面板的打开和关闭。

  • addGroup 添加组: 请参阅 与组和图层交互

  • showPresets 管理地图主题: 控制图层的可见性,并将其排列在不同的 地图主题 中。

  • filterMap 在图例树中的过滤图层:

    • 按地图内容过滤图例: 只有设置为可见并且其要素与当前地图画布相交的图层,其样式才会在图层面板中渲染。否则,将对图层应用通用的NULL符号。基于图层符号,这是一种便捷的方式来识别哪些图层覆盖了关注区的要素。

    • 显示私有图层: 一个方便的快捷方式,用于在 图层 面板显示 私有图层 并与之交互,而无需修改工程设置。

  • expressionFilter 按表达式过滤图例: 应用表达式从所选图层树中移除没有满足条件的要素样式。这可用于突出显示另一图层给定区域/要素内的要素。从下拉列表可以编辑和清除当前应用的表达式。

  • 在图层面板 expandTree 全部展开collapseTree 全部折叠 图层和组。

  • 从当前所选 removeLayer 移除图层/组

../../../_images/layer_toolbar.png

图 12.1 图层面板中的图层工具栏

备注

用于管理图层面板的工具也可用于打印布局中的地图和图例项

12.2.1.1. 配置地图主题

通过 showPresets 管理地图主题 下拉按钮,可以使用方便的快捷方式来控制 图层 面板中图层的可见性:

  • showAllLayers 显示所有图层

  • hideAllLayers 隐藏所有图层

  • showSelectedLayers 显示选中的图层

  • hideSelectedLayers 隐藏选中的图层

  • toggleSelectedLayers 切换选中图层: 更改面板中首个选中图层的可见性,并将该状态应用于其他选中图层。也可以通过 空格键 快捷方式访问。

  • 独自切换选中图层: 更改每个选中图层的可见状态。

  • hideDeselectedLayers 隐藏未选中的图层

除了简单地控制图层可见性之外, showPresets 管理地图主题 菜单还允许在图例中配置 地图主题 ,并可以切换地图主题。地图主题是当前地图图例的 快照 ,其中记录:

  • 图层 面板设置为可见的图层

  • 并且 对于每个可见图层:

    • 对应用于图层 样式 的引用

    • 样式的可见类别,即 图层面板 中的图层选中节点项。这适用于单个符号渲染之外的 符号化

    • 图层节点及其所在组的折叠/展开状态

要创建地图主题,请执行以下操作:

  1. 选中要显示的图层

  2. 像往常一样配置图层属性 (符号化、图表、标注等)

  3. 展开 样式 ► 菜单,然后单击 添加... 按钮,将设置储存为 嵌入工程中的新样式

    备注

    地图主题不记录当前属性的详细信息,只保存对样式名称的引用。因此,当启用此样式时,无论何时对图层应用修改 (例如更改符号化渲染),地图主题都会更新为新信息。

  4. 根据需要对其他图层重复上述步骤

  5. 若适用,请在 图层 面板展开或折叠组与可见图层节点

  6. 单击面板顶部的 showPresets 管理地图主题 按钮,然后 添加主题...

  7. 输入地图主题的名称,然后单击 确定

新主题排列在 showPresets 下拉菜单的中下部。

您可以根据需要创建任意数量的地图主题:每当地图图例 (可见图层、其有效样式、地图图例节点) 中的当前组合与上面定义的任何现有地图主题内容不匹配时,单击 添加主题... 创建新的地图主题,或使用 更换主题 ► 更新地图主题。可以使用 重命名当前主题... 重命名活动地图主题,或者使用 移除当前主题 按钮将其删除。

地图主题有助于在不同预配置组合之间快速切换:在列表中选择一个地图主题恢复其组合。所有配置的主题也可以在打印布局中访问,允许您基于特定主题创建不同的地图项,并且独立于当前主画布渲染 (请参阅 地图项图层) 。

12.2.1.2. 图层面板上下文菜单概览

在工具栏的下面,图层面板的主要部分是列出添加到工程中的所有图层的框架,并可以按组进行组织。除非设置了 基于可见比例 ,否则旁边带有复选框的图层显示的内容与地图画布范围重叠。为更改Z-排序,可以选择图层并在图例中向上或向下拖动。Z-排序表示靠近图例上部列出的图层绘制在图例下部列出的图层之上。此外,可以在多个QGIS实例中拖动图层或图层组。

备注

Z-排序行为可以由 图层顺序 面板覆写。

根据在面板中所选项不同,右键单击将呈现下面显示的专用选项设置。

表 12.1 图层 面板项的上下文菜单

选项

矢量图层

栅格图层

网孔图层

点云图层

zoomToLayer 缩放到图层/组

checkbox

checkbox

checkbox

checkbox

checkbox

zoomToLayer 缩放到选中要素的范围

checkbox

inOverview 在鹰眼图中显示

checkbox

checkbox

checkbox

checkbox

显示要素数量

checkbox

labelingSingle 显示标注

checkbox

复制图层/组

checkbox

checkbox

checkbox

checkbox

checkbox

重命名图层/组

checkbox

checkbox

checkbox

checkbox

checkbox

zoomActual 缩放到原始分辨率 (100%)

checkbox

按当前范围拉伸

checkbox

dbManager 更新SQL图层...

checkbox

addVirtualLayer 编辑虚拟图层...

checkbox

addGroup 添加组

checkbox

duplicateLayer 创建图层副本

checkbox

checkbox

checkbox

checkbox

removeLayer 移除图层/组...

checkbox

checkbox

checkbox

checkbox

checkbox

从组中移出

checkbox

checkbox

checkbox

checkbox

移到顶层

checkbox

checkbox

checkbox

checkbox

checkbox

移到底层

checkbox

checkbox

checkbox

checkbox

checkbox

勾选及所有父项

checkbox

checkbox

checkbox

checkbox

将所选成组

checkbox

checkbox

checkbox

checkbox

openTable 打开属性表

checkbox

toggleEditing 切换编辑模式

checkbox

checkbox

allEdits 当前编辑 ►

checkbox

checkbox

过滤...

checkbox

checkbox

checkbox

更换数据源...

checkbox

checkbox

checkbox

checkbox

修复数据源...

checkbox

checkbox

checkbox

checkbox

在所选要素上执行操作 ► (编辑模式)

checkbox

► 创建要素副本

checkbox

► 创建要素副本并数字化

checkbox

设置图层可见比例...

checkbox

checkbox

checkbox

checkbox

缩放到可见比例

checkbox

checkbox

checkbox

checkbox

图层CRS ►

checkbox

checkbox

checkbox

checkbox

► 将图层的CRS设置为工程的CRS

checkbox

checkbox

checkbox

checkbox

► 设为.. (最近使用的CRS)

checkbox

checkbox

► 设置图层CRS...

checkbox

checkbox

checkbox

checkbox

设置组CRS...

checkbox

设置组的WMS数据...

checkbox

unchecked 互斥组

checkbox

勾选及所有子项 (Ctrl-单击)

checkbox

取消勾选及所有子项 (Ctrl-单击)

checkbox

永久化

checkbox

导出 ►

checkbox

checkbox

checkbox

checkbox

checkbox

► 另存为...

checkbox

► 要素另存为...

checkbox

► 选中的要素另存为...

checkbox

► 另存为图层定义文件...

checkbox

checkbox

checkbox

checkbox

checkbox

► 另存为QGIS图层样式文件...

checkbox

checkbox

checkbox

checkbox

样式 ►

checkbox

checkbox

checkbox

checkbox

► 复制样式

checkbox

checkbox

checkbox

checkbox

► 粘贴样式

checkbox

checkbox

checkbox

checkbox

checkbox

► 增加...

checkbox

checkbox

checkbox

checkbox

► 重命名当前样式...

checkbox

checkbox

checkbox

checkbox

► 编辑符号...

checkbox

► 复制符号

checkbox

► 粘贴符号

checkbox

添加图层注释...

checkbox

checkbox

checkbox

checkbox

编辑图层注释...

checkbox

checkbox

checkbox

checkbox

移除图层注释

checkbox

checkbox

checkbox

checkbox

工程属性...

checkbox

checkbox

checkbox

checkbox

对于GRASS矢量图层, toggleEditing 切换编辑 不可用。有关编辑GRASS矢量图层的信息,请参阅 Digitizing and editing a GRASS vector layer 一节。

12.2.1.3. 与组和图层交互

图例窗口中的图层可以组织成组。有如下不同的方式可以实现:

  1. 点击 folder 图标添加新组。键入组的名称,然后按 Enter 键。现在,单击现有图层并将其拖动到组。

  2. 选择要成组的图层,然后点击 folder 图标。选中的图层将自动嵌入到新组。

  3. 在图例窗口右键单击所选的多个图层,然后选择 将所选成组 。选中的图层将自动放置在新组中。

若要将图层移出组,请将其拖出,或右键单击并选择 从组中移出: 将图层从组中移出并放在其上方。组也可以嵌套在其他组中。如果某个图层放在嵌套组中, 从组中移出 会将该图层从所有嵌套组中移出。

若要将组或图层移到图层面板的顶部,请将其拖动到顶部,或选择 移到顶层 。如果在嵌套组中的图层上使用此选项,该图层将移到其当前组的顶部。 移到底层 选项遵循相同的逻辑向下移动图层和组。

组的复选框将一键显示或隐藏组中选中的图层。按下 Ctrl 键后,单击复选框将打开或关闭组及其子组中的所有图层。

Ctrl-单击选中/未选中的图层将取消勾选/勾选该图层及其所有父图层。

启用 互斥组 选项意味着一个组内同时只有一个图层可见。每当组中的某个图层设置为可见时,其他图层将切换为不可见。

按住 Ctrl 键并单击其他图层,可以同时选择多个图层或组。然后可以同时将所有选中的图层移到新组中。

您也可以使用 Ctrl 键选择多项后按 Ctrl+D 同时删除多个图层或组:所有选中的图层或组都将从图层列表中移除。

有关使用指示器图标的图层和组的详细信息

在某些情况下, 图层 面板中图层或组旁边的格式或图标会发生变化,以提供有关图层/组的更多信息。这些元素是:

  • toggleEditing 表示图层处于编辑模式,并且可以修改数据

  • editableEdits 表示正在编辑的图层有一些未保存的更改

  • indicatorFilter 表示应用于图层的 过滤 。将鼠标悬停在图标上可以查看过滤表达式,之后双击更新查询

  • indicatorNonRemovable 表示工程中 必需 的图层,因此不可移除

  • indicatorEmbedded 表示 嵌入组或图层 及其原始工程文件的路径

  • indicatorBadLayer 若要识别其数据源在工程文件打开时不可用的图层 (请参阅 处理损坏的文件路径) ,请单击图标更新源路径或从图层上下文菜单选择 修复数据源... 条目。

  • indicatorMemory 提示该图层是 临时图层 ,当您关闭此工程时,其内容将被丢弃。为了避免数据丢失并使图层永久化,请单击图标以QGIS支持的GDAL矢量格式储存图层。

  • indicatorOffline 表示在 离线编辑模式 下使用的图层。

  • indicatorNoCRS 表示没有/未知CRS的图层

  • indicatorLowAccuracy 表示坐标存储在坐标参照系中,本身精度较低的图层 (需要启用 相应的设置)

  • indicatorTemporal 表示由画布动画控制的时态图层

  • indicatorNotes 表示具有关联 注释 的图层

  • 当地图画布的当前比例超出图层的可见比例范围 (在其 渲染 属性中设置) 时,该名称将变灰。选择上下文菜单 缩放到可见比例 选项,将地图缩放到图层最近的可见比例范围。

通过分组控制图层渲染

组是工程中树目录结构化图层的一种方式,但它们也会影响其组成图层的渲染方式,即在地图渲染过程中作为单个展平对象。

只要选择了组,就可以在 图层样式 面板使用此类渲染的选项。在 symbology 符号化 选项卡中,勾选复选框 checkbox 将图层作为组进行渲染 ,启用组选项控制子图层的外观,而不是单个图层:

  • 不透明度: 子图层中被其他子图层遮挡的要素将保持遮挡状态,并且不透明度仅适用于 "整个组"。

    ../../../_images/group_opacity.png

    图 12.2 设置图层与组不透明度的对比

    左侧图像显示以50%的不透明度渲染的两个图层 (底层要素可见,但顶层50%的红色要素半遮盖)。第二幅图像显示了在组中设置不透明度的结果 (蓝色底层子图层的一部分被顶层的红色图层完全遮盖,然后以50%的不透明度渲染的结果)。

  • 混合模式: 正如不透明度一样,为整个组设置 混合模式 (例如正片叠底、叠加等) 首先会导致子图层的拼合要素,上层会遮挡下层的要素。然后通过混合扁平组和位于该组下方的图层获得渲染。

    • 当子图层指定了混合模式时,将在拼合之前应用,但范围仅限于影响该组的其他子图层,而不影响位于整个组下方的其他图层。

    • 符号化 选项卡,组中的子图层可以使用更多的 混合模式 选项,这些选项在渲染过程中对其他子图层执行 "裁剪" 样式的操作。例如,您可以通过第二个 "掩膜" 图层中的内容裁剪第一个图层内容的渲染。

  • 图层效果: 仅将 效果 应用于子图层的拼合渲染,例如,应用于组的阴影效果对于被遮挡的子图层是不可见的。

当组设置为 将图层作为组进行渲染 时,只有该组显示在 图层顺序 面板列表中。组子项在此顺序列表不可见,因为它们的顺序是由组图层的位置而决定的。

12.2.1.4. 编辑图层样式

图层 面板,可以使用快捷方式快速轻松地更改图层渲染。

右键单击图层,然后在列表中选择 样式 ► 以便:

  • 查看图层当前可用 样式 。如果为图层定义了多个样式,则可以从一个切换到另一个样式,并且将在地图画布上自动更新图层渲染。

  • 复制当前样式的一部分或全部,并在适用时从其他图层粘贴复制样式

  • 重命名当前... 样式

  • 添加 新样式 (实际是当前样式的副本)

  • 移除当前 样式 (仅当有多个样式可用时)。

    小技巧

    快速分享图层样式

    从上下文菜单,复制图层的样式并将其粘贴到组或图层的选择集:该样式将应用于与原始图层具有相同类型 (矢量、栅格、网孔、点云等) 的所有图层,对于矢量图层而言,则是具有相同几何图形的类型 (点、线或多边形)。

当使用基于要素分类的符号时 (例如 分类基于规则 的矢量图层, 或点云的 分类), 右键单击 图层 面板中的类条目可以编辑类 (及其要素) 的可见性,并避免逐个将其 (取消) 选中:

  • toggleAllLayers 切换项

  • showAllLayers 显示所有项

  • hideAllLayers 隐藏所有项

对于矢量图层,类叶条目的上下文菜单还可以访问:

  • selectAll 选择要素: 在图层中选择与该类匹配的所有要素

  • openTable 在属性表中显示: 打开仅过滤与该类匹配的要素的属性表

  • 使用 色轮 更新 符号颜色 。为了方便起见,最近使用的颜色也可以在色轮的下面找到。

  • 编辑符号...: 打开 符号选择器 对话框更改要素符号 (符号、大小、颜色等)。

  • 复制符号

  • 粘贴符号

小技巧

双击类叶条目也可以打开 符号选择器 对话框。

12.2.2. 图层样式面板

图层样式 面板 (也可以使用 Ctrl+3 激活) 是 图层属性 对话框某些功能的快捷方式。它提供了快速而简单的方式定义图层的渲染和行为,并可视化其效果,而无需打开图层属性对话框。

除了避免阻塞 (或 "模式") 图层属性对话框外,图层样式面板还避免了对话框使屏幕杂乱,并包含多数样式功能 (颜色选择器、效果属性、规则编辑、标注替换等)。例如,单击图层样式面板内的颜色按钮会使颜色选择器对话框在图层样式面板内打开,而不是作为单独的对话框启动。

从图层面板中当前图层的下拉列表中,选择一项并:

  • 根据活动项,设置:

  • stylePreset 样式管理器 中管理关联的样式 (更多信息请参阅 管理自定义样式 )。

  • 查看当前工程应用于图层样式更改的 history 历史记录: 您可以通过在列表中选择某条记录并单击 应用 取消或恢复到任何之前状态。

此面板的另一个强大功能是 checkbox 实时更新 复选框。对其勾选可以立即在地图画布渲染更改,您不再需要单击 应用 按钮。

../../../_images/layer_styling.png

图 12.3 从图层样式面板定义图层的符号

12.2.3. 图层顺序面板

默认情况下,QGIS地图画布上显示的图层是按 图层 面板的顺序绘制的:图层在面板中的位置越靠前,它在地图视图中的位置就越高 (因此越明显)。

您可以为图层定义独立于图层面板排序的图层绘制顺序,并在 视图 ► 面板 ► 菜单或按 Ctrl+9 启用 图层顺序 面板。在图层列表下方勾选 checkbox 控制渲染顺序 ,然后根据需要重新组织面板中的图层。此排序将成为应用于地图画布的渲染顺序。例如,在 图 12.4 中,您可以看到 airports 要素显示在 alaska 多边形上面,尽管这些图层分别位于图层面板的不同位置。

取消勾选 checkbox 控制渲染顺序 将恢复为默认行为。

../../../_images/layer_order.png

图 12.4 定义独立于图例的图层顺序

12.2.4. 概览图面板

概览图 面板 (Ctrl+8) 显示某些图层的完整范围视图的地图。使用 图层 菜单或图层上下文菜单中的 在概览图中显示 选项,将在面板中填充概览地图。在视图中,红色矩形显示当前地图画布范围,帮助您快速确定当前正在查看的整个地图的具体区域。如果单击并拖动概览图框架中的红色矩形,将相应更新主地图视图范围。

请注意,即使已为地图概览图中使用的图层设置了标注,标注也不会在地图概览图中渲染。

12.2.5. 日志消息面板

加载或处理某些操作时,可以使用 messageLog 日志消息面板 跟踪和关注出现在不同选项卡中的消息。可以使用底部状态栏最右侧的图标激活。

12.2.6. 撤消/重做面板

对于处于编辑状态的每个图层, 撤销/重做 (Ctrl+5) 面板显示已执行的操作列表,允许您通过选择面板内列出的操作快速撤消或重做。更多信息,请参阅 撤消和重做编辑

12.2.7. 统计摘要面板

统计 面板 (Ctrl+6) 提供有关矢量图层的摘要信息。此面板允许您选择:

  • 用于计算统计数据的矢量图层:可以从顶部的下拉菜单选择相关图层,也可以使用统计下拉列表底部的 遵循所选图层 复选框与 图层 面板中的活动图层进行同步

  • 使用字段或 expression 表达式 :对于每个图层,将记忆最后的条目,并在重新选择图层时自动计算

  • 使用对话框右下角的下拉按钮返回统计面板。根据字段 (或表达式的值) 的类型,可用的统计字段包括:

表 12.2 可用统计字段类型

统计

字符串

整数

浮点数

日期

计数

checkbox

checkbox

checkbox

checkbox

计数不同值

checkbox

checkbox

计数缺失值

checkbox

checkbox

checkbox

checkbox

总和

checkbox

checkbox

均值

checkbox

checkbox

checkbox

标准差

checkbox

checkbox

样品标准差

checkbox

checkbox

最小值

checkbox

checkbox

checkbox

checkbox

最大值

checkbox

checkbox

checkbox

checkbox

范围

checkbox

checkbox

checkbox

寡数

checkbox

checkbox

checkbox

众数

checkbox

checkbox

checkbox

种类

checkbox

checkbox

第一个四分位数

checkbox

checkbox

第三个四分位数

checkbox

checkbox

四分位距

checkbox

checkbox

最小长度

checkbox

最大长度

checkbox

平均长度

checkbox

统计摘要可以是:

  • 返回整个图层或 checkbox 仅选中的要素

  • editCopy 复制到剪贴板并粘贴为其他应用程序的表

  • 当基础数据源出现变化 (例如,新建或移除的要素/字段、属性修改) 时,使用 refresh 按钮重新计算

../../../_images/statistical_summary.png

图 12.5 显示统计的字段

12.2.8. 调试/开发工具面板

调试/开发工具 面板 (F12) 为QGIS的处理和调试操作提供了一致的位置。可用工具按以下选项卡排序进行组织:

  • networkAndProxy 网络日志工具

  • dbManager 查询记录器

  • stopwatch 分析工具

备注

插件作者可以使用自定义选项卡扩展面板,用于调试和开发自己的插件。这是使用 registerDevToolWidgetFactory 方法完成的。

12.2.8.1. 网络日志工具

networkAndProxy 网络日志工具 选项卡可帮助您记录和显示网络请求,以及大量有用的详细信息,如请求和回复状态、标头、错误、SSL配置错误、超时、缓存状态等。

在其顶部工具栏,您可以:

  • record 记录日志: 将启动或停止日志记录。

  • deleteSelected 清除日志: 将清除日志历史记录。

  • fileSave 保存日志...: 将首先显示重大警告,说明日志是敏感的,应该被视为机密,然后允许您保存日志。

  • 点击 options 设置 下拉菜单选择 显示成功的请求, 显示超时显示来自缓存的响应

  • unchecked 禁用缓存: 将禁用缓存,以便必须执行每个请求。

  • search 过滤请求: 基于URL字符串子集或请求状态

右键单击请求,您可以执行:

  • 打开URL: 将在默认浏览器打开URL。

  • 复制URL

  • 复制为cURL: 以便在终端使用。

  • 复制为JSON: 将树值作为json字符串复制到剪贴板,以便粘贴到Bug报告或用于远程协助。

../../../_images/network_logger.png

图 12.6 网络日志工具输出GET请求

12.2.8.2. 查询记录器

dbManager 查询记录器 用于记录数据提供程序发送的SQL命令和API到后端数据库的连接,以及QGIS测量的执行时间 (即在发送命令的客户端中)。当在QGIS算法或插件的调试或开发过程中研究特定图层的性能时,这非常有用。

在其顶部工具栏,您可以:

  • record 记录日志: 将启动或停止日志记录。

  • deleteSelected 清除日志: 将清除日志历史记录。

  • fileSave 保存日志...: 将首先显示重大警告,说明日志是敏感的,应该被视为机密,然后允许您保存日志。

  • search 过滤查询 基于查询字符串子集或详细信息,例如提供程序类型、开始时间、启动程序等。

右键单击报告查询,可以:

  • 复制SQL: QGIS在数据库调用的命令

  • 复制为JSON: 将树值作为json字符串复制到剪贴板,以便粘贴到Bug报告或用于远程协助。

../../../_images/query_logger.png

图 12.7 输出查询记录

12.2.8.3. 分析工具

stopwatch 分析工具 选项卡允许获取用户请求的动作中涉及的每个操作的加载时间。根据上下文,这些操作可以是设置读取、菜单、地图画布或3D视图创建、解析地图图层引用、书签或布局加载等。这有助于识别出加载时间缓慢的原因。

可以从 类别 下拉菜单选择默认支持的操作:

  • QGIS 启动

  • 加载工程

../../../_images/profiler.png

图 12.8 QGIS启动的分析工具

12.3. 从外部工程嵌入图层

有时,希望将某些图层保存在不同的工程中,并具有相同的样式。您可以为这些图层创建 默认样式 ,也可以从其他工程中嵌入,以节省时间和精力。

与样式设置相比,从现有工程嵌入图层和组具有一定优势:

  • 可以添加所有类型的图层 (矢量或栅格、本地或在线...)

  • 获取组和图层,可以在不同的工程中保持 "背景" 图层相同的树结构

  • 虽然嵌入图层是可编辑的,但您无法更改其属性,例如符号、标注、表单、默认值和动作,从而确保工程之间的一致性

  • 修改原始工程中的项,并将更改传导至所有其他工程

如果要将其他工程文件的内容嵌入到工程中,请选择 图层 ► 嵌入图层和组:

  1. 单击 ... 按钮查找工程:您可以查看工程的内容 (请参阅 图 12.9)

  2. 按住 Ctrl ( 或 osx Cmd) 并单击要检索的图层和组

  3. 单击 确定

所选图层和组将嵌入到 图层 面板中,并在地图画布上显示。在其名称旁边添加 indicatorEmbedded 图标进行识别,将鼠标悬停其上会显示原始工程文件路径的提示信息。

../../../_images/embed_dialog.png

图 12.9 选择要嵌入的图层和组

与其他图层一样,可以右键单击图层并单击 removeLayer 移除 项,从工程中移除嵌入的图层。

小技巧

更改嵌入图层的渲染

除非在原始工程文件中进行修改,否则无法更改嵌入图层的渲染。但是,可以右键单击图层并选择 复制 项,这将创建一个功能齐全且不依赖于原始工程的图层。然后可以安全地移除链接的图层。

12.4. 与要素交互

12.4.1. 选择要素

QGIS提供了多种工具选择地图画布上的要素。选择工具位于 编辑 ► 选择 菜单或 选择工具栏 中。

备注

选择工具可用于当前活动图层。

12.4.1.1. 在地图画布上手动选择

要用鼠标选择一个或多个要素,可以使用以下某个工具:

  • selectRectangle 框选或单击选择要素

  • selectPolygon 按多边形选择要素

  • selectFreehand 自由手绘选择要素

  • selectRadius 按半径选择要素

备注

除了 selectPolygon 按多边形选择要素 外,这些手动选择工具还允许您通过单击在地图画布上选择要素。

备注

selectPolygon 按多边形选择要素 工具可以使用现有多边形要素 (来自任何图层) 选择活动图层中的重叠要素。右键单击多边形,然后从上下文菜单进行选择,该菜单显示包含单击点的所有多边形的列表。将选取活动图层中的所有重叠要素。

小技巧

使用 编辑 ► 选择 ► 重新选择要素 工具可以重做最近选择。当您煞费苦心地做出选择,却意外单击其他地方清除现有选择时非常有用。

使用 selectRectangle 选择要素 工具时,按住 ShiftCtrl 键可切换是否选择某个要素 (即添加到当前选择或从中移除)。

对于其他工具,按住以下键可以执行不同的行为:

  • Shift: 将要素添加到当前选择集

  • Ctrl: 从当前选择集减去要素

  • Ctrl+Shift: 与当前选择集相交,即仅保留当前选择集的重叠要素

  • Alt: 选择完全位于选区形状内的要素。结合使用 ShiftCtrl 键,可以向/从当前选择集添加或减去要素。

12.4.1.2. 自动选择

其他选择工具 (其中大多数可从 属性表 中获得) 根据要素的属性或其选择状态执行选择 (请注意,属性表和地图画布显示相同的信息,因此如果在属性表中选择一个要素,该要素也将在地图画布上被选中):

  • expressionSelect 按表达式选择... 使用表达式对话框选择要素

  • formSelect 按值选择要素... 或按 F3

  • deselectAll 在所有图层中取消对要素的选择 或按 Ctrl+Alt+A 取消选择所有图层中的所有选中的要素

  • deselectActiveLayer 从当前活动图层中取消选择要素 或按 Ctrl+Shift+A

  • selectAll 选择全部要素 或按 Ctrl+A 选择当前图层中的所有要素

  • invertSelection 反选要素 反选当前图层中的选择

  • selectLocation 按位置选择 根据要素与其他要素的空间关系选择要素 (在同一或另一图层中 - 请参阅 Select by location)

例如,如果要从QGIS样本数据的 regions.shp 中查找属于行政区的区域,则可以:

  1. 使用 expressionSelect 使用表达式选择要素 图标选择要素

  2. 展开 字段和值

  3. 双击要查询的字段 ("TYPE_2")

  4. 单击面板中右侧显示的 所有唯一值

  5. 在列表中,双击 'Borough'。在 表达式 编辑器字段中,编写以下查询:

    "TYPE_2"  =  'Borough'
    
  6. 单击 选择要素

在表达式构建器对话框中,还可以使用 函数列表 ► 最近使用 (选择集) 进行您以前使用过的选择。该对话框会记忆最近使用的20个表达式。更多信息和示例,请参阅 表达式

小技巧

将选择集保存到新文件

用户可以将所需格式使用 编辑 ► 要素复制编辑 ► 粘贴要素为 将所选要素保存到 新建临时图层新建矢量图层

12.4.1.3. 按值选择要素

该选择工具打开图层的要素表单,允许用户选择要为每个字段查找的值,搜索是否应区分大小写,以及使用的操作。此工具还具有自动补全功能,可以使用现有值自动填充搜索框。

../../../_images/select_by_value.png

图 12.10 使用表单对话框过滤/选择要素

在每个字段旁边,都有一个下拉列表,其中包含用于控制搜索行为的选项:

表 12.3 每种数据类型的查询运算符

字段搜索选项

字符串

数字

日期

从搜索中 排除字段

checkbox

checkbox

checkbox

等于 (=)

checkbox

checkbox

checkbox

不等于 (≠)

checkbox

checkbox

checkbox

大于 (>)

checkbox

checkbox

小于 (<)

checkbox

checkbox

大于或等于 (≥)

checkbox

checkbox

小于或等于 (≤)

checkbox

checkbox

介于 (包含)

checkbox

checkbox

非介于 (包含)

checkbox

checkbox

包含

checkbox

不包含

checkbox

缺失 (空)

checkbox

checkbox

checkbox

未缺失 (非空)

checkbox

checkbox

checkbox

始于

checkbox

终于

checkbox

对于字符串比较,也可以使用 checkbox 区分大小写 选项。

设置完所有搜索选项后,单击 选择要素 以选择匹配的要素。下拉选项包括:

  • 选择要素

  • 添加到当前选择集

  • 从当前选择集移除

  • 过滤当前选择集

还可以使用 重置表单 按钮清除所有搜索选项。

设置条件后,您还可以:

  • 无需预选即可在地图画布上 缩放到要素范围

  • 闪烁要素: 突出显示匹配的要素。这是一种无需选择或使用识别工具即可识别要素的便捷方法。请注意,闪烁不会改变地图画布的范围,并且仅当要素在当前地图画布的范围内时才可见。

12.4.2. 识别要素

识别工具允许您与地图画布交互,并在弹出窗口中获取有关要素的信息。要识别要素,请使用:

  • 视图 ► 识别要素

  • Ctrl+Shift+I (或 osx Cmd+Shift+I)

  • 属性工具栏上的 identify 识别要素 图标

12.4.2.1. 使用识别要素工具

QGIS提供了几种使用 identify 识别要素 工具识别要素的方法:

  • 左键单击 根据 识别结果 面板中设置的 选择模式选择掩膜 识别要素。

  • 右键单击识别结果 面板中设置 识别要素 作为 选择模式 时,将从所有可见图层获取所有捕捉的要素。这将打开上下文菜单,允许用户更精确地选择要识别的要素或要对其执行的动作。

  • 右键单击识别结果 面板中使用 按多边形识别要素 作为 选择模式 时,可以根据 识别结果 面板中设置的 选择掩膜 识别与选择现有多边形重叠的要素。

小技巧

使用识别要素工具过滤要查询的图层

工程 ► 工程属性... ► 数据源 中的 图层功能描述 下面,取消勾选图层旁边的 是否可识别 列,避免在 当前图层 以外的模式使用 identify 识别要素 工具时查询该列。这是一种便捷方式,可以仅从您感兴趣的图层返回要素。

如果单击要素, 识别结果 对话框将列出有关单击要素的信息。默认视图是树视图,第一项是图层的名称,其子项是其已识别的要素。每个要素都是由字段的名称及其值来描述。该字段是 图层属性 ► 显示 中设置的字段。有关要素的所有其他信息如下所述。

12.4.2.2. 要素信息

可以定制识别结果对话框以显示自定义字段,但默认将显示以下信息:

  • 要素 显示名称

  • 动作: 可以将动作添加到识别要素窗口。动作是通过单击动作标注运行的。默认只添加一个动作,即 编辑要素表单 。可以在图层的属性对话框中定义更多动作 (请参阅 Actions Properties) 。

  • 衍生: 该信息是从其他信息计算或导出的,包括:

    • 有关要素的几何图形的一般信息:

      • 根据几何图形类型,图层的CRS单位中的长度、周长或面积的笛卡尔测量。对于3D线矢量,可以使用笛卡尔线长度。

      • 根据几何图形类型,如果在 测量 的工程属性对话框中设置了椭球体坐标,则使用指定单位的长度、周长或面积的椭球体值。

      • 要素中几何图形部件的数量和单击的部件个数。

      • 要素中的顶点个数。

    • 坐标信息,使用工程属性 坐标显示 的设置:

      • 单击点的 XY 坐标值

      • 与单击点最近的顶点数

      • 最近顶点的 XY 坐标值 (以及 Z/M ,若适用)

      • 如果单击曲线段,还会显示该截面的半径

  • 数据属性: 这是已单击要素的属性字段和值的列表。

  • 有关相关子要素的信息,如果定义了 关系:

    • 关系的名称

    • 参照字段中的条目,例如相关子要素的名称

    • 动作: 列出了在图层的属性对话框中定义的动作 (请参阅 Actions Properties) ,默认动作是 查看要素表单

    • 数据属性: 这是相关子要素的属性字段和值的列表。

备注

要素属性中的链接可在 识别结果 面板相应位置单击,并在您的默认Web浏览器中打开。

../../../_images/identify_features.png

图 12.11 识别结果对话框

12.4.2.3. 识别结果对话框

在窗口顶部,您有一些工具可用:

  • 当前要素的 formView 打开表单

  • expandTree 展开树

  • collapseTree 折叠树

  • expandNewTree 默认展开新结果 定义下一个已识别要素的信息是折叠还是展开

  • deselectAll 清除结果

  • editCopy 将所选要素复制到剪贴板

  • filePrint 打印选中的HTML响应

  • 用于获取要素的识别选择模式:

    • identifyByRectangle 框选或单击识别要素

    • identifyByPolygon 按多边形识别要素

    • identifyByFreehand 通过自由手绘识别要素

    • identifyByRadius 按半径范围识别要素

    备注

    使用 identifyByPolygon 按多边形识别要素 时,可以在任何现有多边形上右键单击,然后使用它来识别另一图层中的重叠要素。

窗口底部是 模式视图 组合框。 模式 定义了应从哪些图层识别要素:

  • 当前图层: 仅识别来自所选图层的要素。如果选择了组,则识别其可见图层的要素。如果未选择,仅识别当前图层。

  • 从上往下,至第一个停止: 仅来自上层可见图层的要素。

  • 从上往下: 可见图层中的所有要素。结果显示在面板中。

  • 图层选择: 打开上下文菜单,用户可以在其中选择从中识别要素的图层,类似于右键单击。结果面板中仅显示选中的要素。

视图 可以设置为 图表 。只能为栅格图层设置 '表' 和 '图表' 视图。

识别工具允许您 checkbox 单要素结果时自动打开表单, 该选项可在 options 识别设置 中找到。如果勾选,每次识别结果为单个要素时,都会打开显示其属性的表单。这是快速编辑要素属性的便捷方法。

在所识别项的上下文菜单中可以找到其他功能。例如,从上下文菜单中,您可以:

  • 查看要素表单

  • 缩放至要素

  • 复制要素:复制所有要素的几何图形和属性

  • 切换要素选择:将识别的要素添加到选择集

  • 复制属性值:仅复制您单击的属性值

  • 复制要素属性:复制要素的属性

  • 按属性值选择要素:选择图层中与选中属性相匹配的所有要素

  • 清除结果:移除窗口中的结果

  • 清除突出显示:移除地图上突出显示的要素

  • 突出显示所有

  • 突出显示图层

  • 激活图层:选择要激活的图层

  • 图层属性:打开图层属性窗口

  • 全部展开

  • 全部折叠

12.5. 保存和共享图层属性

12.5.1. 管理自定义样式

将矢量图层添加到地图画布时,QGIS默认使用随机符号/颜色渲染其要素。但是,您可以在 工程 ► 工程属性... ► 默认符号 设置默认样式,这将根据其几何图形类型应用于每个新添加的图层。

不过,多数情况,您更希望拥有可自定义且更复杂的样式,并可以自动或手动应用于图层 (只需较少的工作量)。请使用图层属性对话框底部的 样式 菜单实现此目的。此菜单为您提供了创建、加载和管理样式的功能。

样式存储图层属性对话框中设置的信息,渲染矢量图层的图层 (包括符号化、标注、字段和表单定义、动作、图表等) 或与之交互,或栅格的像素 (波段或颜色渲染、透明度、金字塔、直方图等)。

../../../_images/style_combobox.png

图 12.12 矢量图层样式组合框选项

默认情况下,应用于加载图层的样式命名为 默认 。您为图层获得理想且合适的渲染后,可以通过单击 selectString 样式 组合框对其保存并选择:

  • 重命名当前样式: 活动样式将被重命名,并使用当前选项进行更新

  • 添加: 使用当前选项创建新样式,默认将保存在QGIS工程文件中。请参阅以下内容,将样式保存在另一个文件或数据库

  • 移除: 如果为图层定义了多个样式,请删除不需要的样式。

在样式下拉列表的底部,可以看到为当前活动样式的图层设置的样式名称。

请注意,每次验证图层属性对话框时,活动样式都会根据所做的更改进行更新。

可以根据需要为图层创建任意数量的样式,但每次仅有一个样式处于活动状态。与 地图主题 结合使用,将提供快速而强大的方式管理复杂的工程,而无需复制地图图例中的任何图层。

备注

鉴于无论何时对图层属性应用修改,更改都存储在活动样式中,因此请确保编辑正确的样式,避免错误变更 地图主题 中使用的样式。

小技巧

从图层上下文菜单管理样式

图层 面板中的图层上右键单击,可以复制、粘贴、添加或重命名图层样式。

12.5.2. 在文件或数据库中存储样式

虽然从 样式 组合框创建的样式默认保存在工程内部,并且可以在工程的图层之间复制和粘贴,但也可以将其保存在工程外部,以便加载到另一个工程中。

12.5.2.1. 另存为文本文件

单击 selectString 样式 ► 保存样式, 可以将样式另存为:

  • QGIS图层样式文件 (.qml)

  • SLD文件 (.sld), 仅适用于矢量图层

在基于文件格式图层 (.shp, .tab...) 上使用, 另存为默认 为该图层生成 .qml 文件 (具有相同名称)。SLD可以将所有渲染器的类型 (单符号、分类、分级或基于规则) 导出,但在导入SLD时,会创建单符号或基于规则的渲染器。这意味着分类或分级样式将转换为基于规则的样式。如果要保留这些渲染器,必须使用QML格式。另一方面,有时将样式转换为基于规则的样式会非常方便。

12.5.2.2. 保存在数据库

如果图层数据源是数据库提供程序,矢量图层样式也可以存储在数据库中。支持的格式有PostGIS、地理包、SpatiaLite、MS SQL Server 和Oracle。图层样式保存在数据库中的表 (名为 layer_styles) 中。单击 保存样式... ► 保存到数据库 ,然后在对话框中填写定义的样式名称、添加描述、 .用户界面 文件 (如果适用),并检查样式是否应为默认样式。

可以为数据库中的单个表保存多个样式。但是,每个表只能有一个默认样式。默认样式可以保存到图层数据库或 qgis.db (当前 用户配置 目录中的本地SQLite数据库)。

../../../_images/save_style_database.png

图 12.13 在数据库中保存样式对话框

小技巧

在数据库之间共享样式文件

仅当图层来自此数据库时,才能将样式保存到数据库。您不能混淆数据库 (例如Oracle的图层和 MS SQL Server 的样式)。如果希望在数据库之间共享样式,请改用纯文本文件。

备注

从PostgreSQL数据库备份中恢复 layer_styles 表时可能会遇到问题。请参照 QGIS layer_style 表和数据库备份 试图解决。

12.5.2.3. 加载样式

QGIS加载图层时,如果该图层已经存在默认样式,QGIS将使用该样式加载此图层。此外,还可以使用 样式 ► 重置为默认 查找并加载文件,替换图层的当前样式。

样式 ► 加载样式 可帮助您将保存的样式应用于图层。虽然文本文件样式 (.sld.qml) 可以应用于任何图层,无论是何种格式,只有当图层来自同一数据库或样式存储在QGIS本地数据库中时,才能加载存储在数据库中的样式。

数据库样式管理器 对话框显示与在数据库中找到的图层以及保存在其中的所有其他样式相关的样式列表以及名称和描述。

小技巧

在工程中快速共享图层样式

您也可以在工程中共享图层样式,而无需导入文件或数据库样式:右键单击 图层面板 中的图层,然后从 样式 组合框复制图层的样式并将其粘贴到组或所选图层 - 样式应用于与原始图层具有相同类型 (矢量与栅格) 的所有图层,如果是矢量图层,则具有相同的几何图形类型 (点、线或多边形)。

12.5.3. 图层定义文件

图层定义可以使用活动图层的上下文菜单的 导出 ► 另存为图层定义文件... 保存为 图层定义文件 (.qlr) 。图层定义文件 (.qlr) 包含对图层的数据源及其样式的引用。 .qlr 文件显示在浏览器面板中,可用于将图层 (使用保存的样式) 添加到图层面板。您还可以将 .qlr 文件从系统文件管理器拖放到地图画布。

12.6. 编写您的数据

除了显示和符号化图层中的数据外,QGIS还允许您填写:

  • 元数据: 相关信息有助于其他人查找和理解,以及如何访问和使用数据集。这些都是数据源的属性,可以在QGIS工程中编辑。

  • 注解: 关于当前工程中图层的说明和注释

12.6.1. 元数据

在图层属性对话框中, editMetadata 元数据 选项卡为您提供了在图层中创建和编辑元数据报告的选项。

填写关注的信息:

  • 数据 识别: 数据集的基本属性 (父标识符、标识符、标题、摘要、语言等);

  • 数据所属的 类别 。除了 ISO 类别,您还可以添加自定义类别;

  • 关键字 按照基于标准的词汇检索数据和相关概念;

  • 访问 数据集 (许可证、版权、限制和约束);

  • 数据集的 范围 ,空间范围 (CRS、地图范围、海拔) 或时态;

  • 数据集所有者的 联系人;

  • 附属资源和相关信息的 链接;

  • 数据集的 历史记录

验证 选项卡中提供了填写信息的摘要,可帮助您识别与表单相关的潜在问题。之后,可以修复或忽略这些问题。

默认元数据保存在工程文件中, 元数据 下拉列表提供了从 .qmd 文件加载/保存元数据以及在 "默认" 位置加载/保存元数据的选项。

../../../_images/metadata_save_options.png

图 12.14 元数据加载/保存选项

另存为默认重置为默认 使用的 "默认" 位置会根据基础数据源及其配置而更改:

  • 对于PostgreSQL数据源,如果勾选配置选项 允许在数据库中保存/加载QGIS图层元数据 ,元数据将存储在数据库的专用表中。

  • 对于地理包数据源, 另存为默认 始终将元数据保存在地理包的内部元数据表中。

    当元数据保存到PostgreSQL或地理包的内部表中时,它们就可以在浏览器和 图层元数据搜索面板 中进行搜索和过滤。

  • 对于所有其他基于文件的数据源, 另存为默认 将元数据与文件一起保存在 .qmd 文件中。

  • 除上述外的其他情况下, 另存为默认 会将元数据保存在本地 .sqlite 数据库中。

12.6.2. 图层注解

图层注解允许记录当前工程的图层。可用于储存工程的用户的重要消息,如待办事项列表、说明、警告等。

图层 面板的图层上下文菜单中,选择 添加图层注解... 并用必要的文本填写打开的对话框。

../../../_images/layer_notes.png

图 12.15 向图层添加注解

添加图层注解 对话框提供了基于HTML格式的多行文本框,其中包含一套完整的工具,用于:

  • 文本操作:剪切、复制、粘贴、撤消、重做

  • 字符格式,应用于全部或部分内容:字号和颜色、粗体、斜体、下划线、删除线、背景色、URL突出显示

  • 段落结构:项目符号和有序列表、缩进、预定义标题

  • 文件插入,即使用拖放

  • 使用HTML编码进行编辑

在工具栏的最右侧 ... 下拉菜单,您可以:

  • 移除所有格式

  • 移除字符格式

  • 清除所有内容

图层 面板中,带有注解的图层将被指定为 indicatorNotes 图标,鼠标悬停于该图标时将显示注解内容。单击图标将编辑注解。您也可以右键单击图层并 编辑图层注解...移除图层注解

备注

注解是 图层样式 的一部分,可以保存在 .qml.qlr 文件中。在复制粘贴图层样式时,可以将它们从一个图层传递到另一个图层。

12.7. 将值存储在变量中

在QGIS中,您可以使用变量来储存可在表达式中使用的复发值 (例如,工程的标题或用户的全称)。变量可以在应用程序的全局级别、工程级别、图层级别、处理建模级别、布局级别和布局项级别进行定义。就如CSS级联规则,变量也可以被盖写 - 例如,工程级别变量将盖写任何具有相同名称的应用程序全局级别变量集。您可以使用这些变量在变量名前加 @ 字符构建文本字符串或其他自定义表达式。例如,在打印布局中使用以下内容创建标注:

This map was made using QGIS [% @qgis_version %]. The project file for this
map is: [% @project_path %]

将按如下渲染标注:

This map was made using QGIS 3.4.4-Madeira. The project file for this map is:
/gis/qgis-user-conference-2019.qgs

除了 预设只读变量 外,还可以为上述任何级别定义自己的自定义变量。您可以管理:

为了区别可编辑变量,只读变量名称和值以斜体显示。而由较低级变量盖写较高级变量时添加删除线显示。

../../../_images/project_variables.png

图 12.16 工程级别的变量编辑器

备注

您可以在 Nyall Dawson 的 探索 QGIS 2.12 中的变量, part 1, part 2part 3 博客文章中阅读有关变量的更多信息并查找一些示例。

12.8. 认证

QGIS具有以安全方式储存/检索认证凭据的功能。用户可以将凭据安全地保存到认证配置,并存储在可移植数据库中,可以应用于服务器或数据库连接,并由工程或设置文件中的ID令牌安全引用。更多信息请参阅 认证系统

初始化认证系统及可移植数据库时,需要设置主密码。

12.9. 常用控件

在QGIS中,您经常需要使用一些选项。为了方便起见,QGIS提供了如下所示的专用控件。

12.9.1. 颜色选择器

12.9.1.1. 颜色对话框

每当单击 selectColor 图标选择颜色时,就会显示 选择颜色 对话框。此对话框的功能取决于 设置 ► 选项... ► 常规使用操作系统颜色选择对话框 参数复选框的状态。勾选时,使用的颜色对话框是运行QGIS操作系统的原生对话框。否则,将使用QGIS自定义颜色选择器。

自定义颜色选择器对话框有四个不同的选项卡,允许您按 colorBox 颜色渐变, colorWheel 色轮, colorSwatches 色卡colorPicker 拾色器 选择颜色。前两个选项卡,可以浏览到所有的颜色组合,并将您的选择应用于项。

../../../_images/color_selector_ramp.png

图 12.17 颜色选择器渐变选项卡

colorSwatches 色卡 选项卡,可以从调色板列表中进行选择 (详细信息请参阅 Colors settings) 。除了 最近使用过的颜色 调色板外,其他的都可以通过框架底部的 symbologyAdd 添加当前颜色symbologyRemove 移除选中的颜色 按钮进行修改。

调色板组合框旁边的 ... 按钮还提供了几个选项:

  • 复制、粘贴、导入或导出颜色

  • 创建、导入或移除调色板

  • 使用 在颜色按钮中显示 项将自定义调色板添加到颜色选择器控件 (请参阅 图 12.19)

../../../_images/color_selector_recent_colors.png

图 12.18 颜色选择器色卡选项卡

另一个选项是使用 colorPicker 拾色器 ,它允许您从QGIS用户界面的任何部分的鼠标光标位置,甚至从另一个应用程序中拾取颜色:在选项卡处于活动状态时按下空格键,将鼠标移到所需颜色上并单击,或再次按下空格键。也可以单击 拾取颜色 按钮激活拾色器。

无论使用何种方法,选中的颜色始终通过 HSV (色相、饱和度、明度值) 和 RGB (红色、绿色、蓝色) 值的颜色滑块进行描述。颜色也可以在 HTML标记 中识别。

修改颜色非常简单,只需单击色轮或渐变或任意颜色参数滑块即可。您可以使用旁边的输入框或在相应滑块上滚动鼠标滚轮来调整这些参数,也可以在HTML标记键入颜色。最后,还可以使用 不透明度 滑块设置透明度级别。

该对话框还提供了 旧颜色 (对象原颜色) 和 新颜色 (正在选择) 之间的视觉对比。使用拖放或点击 atlasNext 将颜色添加到色卡 按钮,可以将选择的颜色保存在一个色卡中,便于以后使用。

小技巧

快速颜色修改

将颜色选择器控件拖放到另一个控件上,应用其颜色。

12.9.1.2. 颜色下拉快捷方式

单击 selectColor 颜色按钮右侧的下拉箭头,可以显示用于快速选择颜色的控件。此快捷方式可访问:

  • 从色轮拾取颜色

  • 用于更改颜色不透明度的Alpha滑块

  • 之前设置为 在颜色按钮中显示 的颜色调色板

  • 复制当前颜色并将其粘贴到另一个控件

  • 从计算机显示器的任意位置拾取颜色

  • 从颜色选择器对话框选择颜色

  • 将颜色从一个控件拖放到另一个控件,进行快速修改

小技巧

将鼠标滚轮在颜色选择器控件上滚动,可以快速修改关联颜色的不透明度。

备注

当颜色控件通过数据定义重设属性设置为 工程颜色 时,上述用于更改颜色的功能不可用。您首先需要 取消颜色链接清除 定义。

../../../_images/quick_color_selector.png

图 12.19 快速颜色选择器菜单

12.9.1.3. 颜色渐变下拉快捷方式

颜色渐变是将一组颜色应用于一个或多个要素的实用方法。其创建方式在 设置颜色渐变 章节进行了描述,对于颜色,点击 selectColorRamp 颜色渐变按钮将打开相应的颜色渐变类型对话框,并允许您更改其属性。

../../../_images/color_ramp_brewer.png

图 12.20 自定义ColorBrewer渐变

按钮右侧的下拉菜单可快速访问更多的颜色渐变和选项集:

  • 反转颜色渐变

  • 清除当前渐变: 取消为控件设置的颜色渐变 (仅在某些环境中可用)

  • unchecked 随机颜色渐变: 仅在某些环境中可用 (例如,当颜色渐变用于图层符号化时),勾选此条目将创建并应用具有随机颜色的颜色渐变。如果当前的随机颜色渐变不令人满意,还可以启用 打乱随机颜色 条目重新生成新的随机颜色渐变。

  • 梯度 的预览或在 样式管理器 对话框中标记为 收藏夹目录分类:cpt-city 的颜色渐变

  • 全部颜色渐变: 访问兼容的颜色渐变数据库

  • 可在当前控件使用的受支持的 新建颜色渐变... 类型 (请注意,除非您将其保存到库,否则此颜色渐变无法在其他地方使用)

  • 编辑颜色渐变...: 与单击整个颜色渐变按钮的作用相同

  • 保存颜色渐变...: 将当前颜色渐变及其自定义项保存到样式库

../../../_images/quick_colorramp_selector.png

图 12.21 快速颜色渐变选择控件

12.9.2. 符号控件

符号 选择器控件是用于设置要素符号属性的快捷方式。单击下拉箭头将显示以下符号选项以及 颜色下拉控件 的功能:

  • 配置符号...: 与点击符号选择器控件相同,将打开对话框设置 符号参数

  • 从当前项 复制符号

  • 粘贴符号 到当前项,加速配置

  • 清除当前符号 取消为控件设置的指定符号 (仅在某些上下文中可用)

小技巧

将鼠标滚轮在标记或线符号控件上滚动,可以快速修改关联符号的大小。

12.9.3. 远程或嵌入式文件选择器

随同文件选择器控件, ... 按钮有时会显示下拉箭头。这通常在使用时可用:

  • 符号或标注中的SVG文件

  • 用于自定义符号、标注、纹理或装饰的栅格图像

按下箭头将为您提供一个菜单:

  • 从文件系统加载文件:通过文件路径识别文件,QGIS需要解析路径才能显示相应的图像

  • 从远程URL加载文件:如上所述,只有成功检索远程资源时才会加载图像

  • 文件嵌入到项:将文件嵌入到当前工程、样式数据库或打印布局模板。然后,文件始终作为项的一部分进行渲染。这是一种使用自定义符号创建独立工程的便捷方法,可以在QGIS的不同用户和设置之间轻松共享。

  • 从控件提取嵌入的文件并将其保存到磁盘。

12.9.4. 可见比例选择器

可见比例选择器提供了用于控制元素在地图画布中可见比例的选项。在指定比例范围之外,元素不会显示。可以从其 渲染 属性选项卡进行设置,并应用于例如图层、标注或图表等。

  1. 勾选 checkbox 依赖可见比例 复选框

  2. 用所需缩小比例的最大值填充 最小比例 (不含) 框,键入或从 预定义比例 中选择值

  3. 和/或使用所需放大比例的最大值填充 最大比例 (包含)

    比例框旁边的 mapIdentification 设置为当前画布比例 按钮将当前地图画布比例设置为范围可见边界。点击按钮旁边的箭头可以访问布局地图中的比例,并重新使用其填充框。

../../../_images/visibilityscale_selector.png

图 12.22 可见比例选择器控件

12.9.5. 空间范围选择器

当您想选择要分配给图层的空间范围或限制要运行的动作时, 范围 选择器控件是便捷的快捷方式。根据上下文,提供如下选项:

  • Current Layer Extent: e.g. when exporting a layer

  • Calculate from Layer ►: uses extent of a layer loaded in the current project

  • Use current Map Canvas Extent

  • Draw on Canvas: a rectangle whose coordinates are then used

  • Calculate from Bookmark: uses extent of a saved bookmark

  • Calculate from Layout Map: uses extent of a layout map

  • Enter or edit the coordinates as xmin, xmax, ymin, ymax

../../../_images/extent_selector.png

图 12.23 Extent selector widget

12.9.6. Font Selector

The Font selector widget is a convenient shortcut when you want to set font properties for textual information (feature labels, decoration labels, map legend text, ...). Clicking the drop-down arrow shows some or all of the following options:

../../../_images/fontselector_widget.png

图 12.24 Font selector drop-down menu

  • Clear Current Text Format to unset any assigned text format to the widget (available only in some contexts)

  • Font Size in the associated unit

  • Recent Fonts ► menu with the active font checked (at the top)

  • Configure Format...: same as pressing the font selector widget. It opens a dialog to set text format parameters. Depending on the context, it can be the OS default Text format dialog or the QGIS custom dialog with advanced formatting options (opacity, orientation, buffer, background, shadow, ...) as described in section 格式化标注文本.

  • Copy Format of the text

  • Paste Format to the text, speeding configuration

  • the color widget for quick color setting

小技巧

Scroll the mouse wheel over a font selector widget to quickly modify the font size of the associated text.

12.9.7. Unit Selector

Size properties of the items (labels, symbols, layout elements, ...) in QGIS are not necessarily bound to either the project units or the units of a particular layer. For a large set of properties, the Unit selector drop-down menu allows you to tweak their values according to the rendering you want (based on screen resolution, paper size, or the terrain). Available units are:

  • 毫米

  • Points

  • 像素

  • 英寸

  • Percentage: allows you to set some properties as a percent of another one. For example, this is useful for creation of text formats where the components (buffer size, shadow radius...) nicely scale as the text size is changed, instead of having constant buffer/shadow sizes. So you don't need to adjust those sizes, when the text size changes.

  • Meters at Scale: This allows you to always set the size in meters, regardless of what the underlying map units are (e.g. they can be in inches, feet, geographic degrees, ...). The size in meters is calculated based on the current project ellipsoid setting and a projection of the distances in meters at the center of the current map extent. For maps in a projected coordinate system this is calculated using projected units. For maps in a geographic (latitude/longitude) based system the size is approximated by calculating meter sizes using ellipsoidal calculations for the vertical scale of the map.

  • and Map Units: The size is scaled according to the map view scale. Because this can lead to too big or too small values, use the options button next to the entry to constrain the size to a range of values based on:

    • The Minimum scale and the Maximum scale: The value is scaled based on the map view scale until you reach any of these scale limits. Out of the range of scale, the value at the nearest scale limit is kept.

    • and/or The Minimum size and the Maximum size in mm: The value is scaled based on the map view scale until it reaches any of these limits; Then the limit size is kept.

    ../../../_images/adjust_scaling.png

    图 12.25 Adjust scaling range dialog

12.9.8. Number Formatting

Numeric formatters allow formatting of numeric values for display, using a variety of different formatting techniques (for instance scientific notation, currency values, percentage values, etc). One use of this is to set text in a layout scale bar or fixed table.

../../../_images/number_formatting.png

图 12.26 Formatting numeric value

Different categories of formats are supported. For most of them, you can set part or all of the following numeric options:

  • checkbox 显示千位分隔符

  • unchecked 显示加号

  • unchecked 显示尾随零

But they can also have their custom settings. Provided categories are:

  • General, the default category: has no setting and displays values as set in the parent widget properties or using the global settings.

  • Number

    • The value can be Round to a self defined number of Decimal places or their Significant figures

    • customize the Thousands separator and Decimal separator

  • Bearing for a text representation of a direction/bearing using:

    • Format: possible ranges of values are 0 to 180°, with E/W suffix, -180 to +180° and 0 to 360°

    • number of Decimal places

  • Currency for a text representation of a currency value.

    • 前缀

    • 后缀

    • number of Decimal places

  • Fraction for a vulgar fractional representation of a decimal value (e.g. 1/2 instead of 0.5)

    • unchecked Use unicode super/subscript to show. For example 1/2 instead of 1/2

    • unchecked 使用专用的Unicode字符

    • customize the Thousands separator

  • Percentage - appends % to the values, with setting of:

    • number of Decimal places

    • Scaling to indicate whether the actual values already represent percentages (then they will be kept as is) or fractions (then they are converted)

  • Scientific notation in the form 2.56e+03. The number of Decimal places can be set.

A live preview of the settings is displayed under the Sample section.

12.9.9. Blending Modes

QGIS offers different options for special rendering effects with these tools that you may previously only know from graphics programs. Blending modes can be applied on layers and features, and also on print layout items:

  • Normal: This is the standard blend mode, which uses the alpha channel of the top pixel to blend with the pixel beneath it. The colors aren't mixed.

  • Lighten: This selects the maximum of each component from the foreground and background pixels. Be aware that the results tend to be jagged and harsh.

  • Screen: Light pixels from the source are painted over the destination, while dark pixels are not. This mode is most useful for mixing the texture of one item with another item (such as using a hillshade to texture another layer).

  • Dodge: Brighten and saturate underlying pixels based on the lightness of the top pixel. Brighter top pixels cause the saturation and brightness of the underlying pixels to increase. This works best if the top pixels aren't too bright. Otherwise the effect is too extreme.

  • Addition: Adds pixel values of one item to the other. In case of values above the maximum value (in the case of RGB), white is displayed. This mode is suitable for highlighting features.

  • Darken: Retains the lowest values of each component of the foreground and background pixels. Like lighten, the results tend to be jagged and harsh.

  • Multiply: Pixel values of the top item are multiplied with the corresponding values for the bottom item. The results are darker.

  • Burn: Darker colors in the top item cause the underlying items to darken. Burn can be used to tweak and colorize underlying layers.

  • Overlay: Combines multiply and screen blending modes. Light parts become lighter and dark parts become darker.

  • Soft light: Very similar to overlay, but instead of using multiply/screen it uses color burn/dodge. This is supposed to emulate shining a soft light onto an image.

  • Hard light: Hard light is also very similar to the overlay mode. It's supposed to emulate projecting a very intense light onto an image.

  • Difference: Subtracts the top pixel from the bottom pixel, or the other way around, in order always to get a positive value. Blending with black produces no change, as the difference with all colors is zero.

  • Subtract: Subtracts pixel values of one item from the other. In the case of negative values, black is displayed.

../../../_images/blending_modes.png

图 12.27 Examples of blend modes applied to a green feature over an orange

From top to bottom, left to right: Normal -- Lighten, Screen, Dodge, Addition -- Difference, Subtract -- Darken, Multiply, Burn -- Overlay, Soft light, Hard light

When a layer is part of a group that renders layers as a group, additional blending modes are available for the rendering. They provide methods to clip the render of one layer’s content by the content in a second "mask" layer.

  • Masked By Below: The output is the top pixel, where the opacity is reduced by that of the bottom pixel.

  • Mask Below: The output is the bottom pixel, where the opacity is reduced by that of the top pixel.

  • Inverse Masked By Below: The output is the top pixel, where the opacity is reduced by the inverse of the bottom pixel.

  • Inverse Mask Below: The output is the bottom pixel, where the opacity is reduced by the inverse of the top pixel.

  • Paint Inside Below: The top pixel is blended on top of the bottom pixel, with the opacity of the top pixel reduced by the opacity of the bottom pixel.

  • Paint Below Inside: The bottom pixel is blended on top of the top pixel, with the opacity of the bottom pixel reduced by the opacity of the top pixel.

../../../_images/blending_clipping.png

图 12.28 Examples of blend clipping mode applied to top green layer in a group

A: Mask Below B: Masked By Below C: Paint Below Inside D: Inverse Mask Below E: Inverse Masked By Below F: Paint Inside Below

12.9.10. Data defined override setup

Next to many options in the vector layer properties dialog or settings in the print layout, you will find a dataDefine Data defined override icon. Using expressions based on layer attributes or item settings, prebuilt or custom functions and variables, this tool allows you to set dynamic values for parameters. When enabled, the value returned by this widget is applied to the parameter regardless of its normal value (checkbox, textbox, slider...).

12.9.10.1. The data defined override widget

Clicking the dataDefine Data defined override icon shows the following entries:

  • Description... that indicates if the option is enabled, which input is expected, the valid input type and the current definition. Hovering over the widget also pops up this information.

  • Store data in the project: a button allowing the property to be stored using to the Auxiliary Storage Properties mechanism.

  • Field type: an entry to select from the layer's fields that match the valid input type.

  • Color: when the widget is linked to a color property, this menu gives access to the colors defined as part of the current project's colors scheme.

  • Variable: a menu to access the available user-defined variables

  • Edit... button to create or edit the expression to apply, using the Expression String Builder dialog. To help you correctly fill in the expression, a reminder of the expected output's format is provided in the dialog.

  • Paste and Copy buttons.

  • Clear button to remove the setup.

  • For numeric and color properties, Assistant... to rescale how the feature data is applied to the property (more details below)

小技巧

Use right-click to (de)activate the data override

When the data-defined override option is set up correctly the icon is yellow dataDefineOn or dataDefineExpressionOn. If it is broken, the icon is red dataDefineError or dataDefineExpressionError.

You can enable or disable a configured dataDefine Data-defined override button by simply clicking the widget with the right mouse button.

12.9.10.2. Using the data-defined assistant interface

When the dataDefine Data-defined override button is associated with a size, a rotation, an opacity or a color property, it has an Assistant... option that helps you change how the data is applied to the parameter for each feature. The assistant allows you to:

  • Define the Input data, ie:

    • Source: the attribute to represent, using a field or an expression expression

    • the range of values to represent: you can manually enter the values or use the refresh Fetch value range from layer button to fill these fields automatically with the minimum and maximum values returned by the Source expression applied to your data

  • unchecked Apply transform curve: by default, output values (see below for setting) are applied to input features following a linear scale. You can override this logic: enable the transform option, click on the graphic to add break point(s) and drag the point(s) to apply a custom distribution.

  • Define the Output values: the options vary according to the parameter to define. You can globally set:

    • for a color setting, the color ramp to apply to values and the single color to use for NULL values

    • for the others, the minimum and maximum values to apply to the selected property as well as the size/angle/opacity value for ignored or NULL source features

    • for size properties, the Scale method of representation which can be Flannery, Exponential, Surface, Radius or Linear

    • the Exponent to use for data scaling when the Scale method is of exponential type or when tweaking the opacity

When compatible with the property, a live-update preview is displayed in the right-hand side of the dialog to help you control the value scaling.

../../../_images/varying_size_assistant.png

图 12.29 Scaling feature size based on passengers field's value

The values presented in the varying size assistant above will set the size 'Data-defined override' with:

coalesce(scale_exp("passengers", 9, 2000, 1, 10, 0.57), 0)