9.2. Lesson: 有用的QGIS插件

既然您可以安装、启用和禁用插件,让我们通过查看一些有用的插件示例来看看这在实践中如何对您有所帮助。

The goal for this lesson: 熟悉插件界面并熟悉一些有用的插件。

9.2.1. 基本信息 Follow Along: The QuickMapServices Plugin

QuickMapServices插件是一个简单易用的插件,可以将底图添加到您的QGIS项目中。它有许多不同的选项和设置。让我们开始探索它的一些功能。

  1. 启动新地图并添加 roads 图层来自 training_data 地理背包。

  2. 安装 QuickMapServices 插件。

  3. 点击 Web ► QuickMapServices 。第一个菜单列出了不同的地图提供程序 (OSMNASA )和可用的地图。

  4. 点击一个条目,您就可以将底图加载到您的项目中。

    ../../../_images/qms_result.png

好的!但QMS的主要优势之一是提供对许多数据提供商的访问。让我们将它们相加。

  1. 点击 Web ► QuickMapServices ► Settings

  2. 转到 More services 标签。

  3. 请仔细阅读此选项卡的信息,如果您同意,请单击 Get Contributed pack 纽扣。

  4. 单击 Save

  5. 重新打开 Web ► QuickMapServices 菜单,您将看到有更多的提供程序可用。

    ../../../_images/qms_menu.png
  6. 选择最适合您需要的选项,并将数据加载到项目中!

也可以通过现有的数据提供商进行搜索

  1. 通过点击打开插件的搜索标签 Web ► QuickMapServices ► Search QMS 。该插件的这个选项允许您根据地图画布的当前范围或使用搜索词来过滤可用的底图。

  2. 按下 Filter by extent 您应该会看到一个可用的服务。如果找不到任何服务,可以缩小搜索范围,在世界各地(或您所在的位置)或使用关键字进行搜索。

  3. 按下 Add 按钮加载返回的数据集。

  4. 底图将被加载,并且您将拥有地图的背景。

    ../../../_images/qms_search_added.png

9.2.2. 基本信息 Follow Along: The QuickOSM Plugin

凭借令人难以置信的简单界面,QuickOSM插件允许您下载 OpenStreetMap 数据。

  1. 启动一个新的空项目并添加 roads 图层来自 training_data GeoPackage。

  2. 安装 QuickOSM 插件。该插件在QGIS工具栏中添加了两个新按钮,可在 Vector ► QuickOSM 菜单。

  3. 打开QuickOSM对话框。该插件有许多不同的选项卡:我们将使用 Quick Query 一。

  4. 您可以通过选择通用功能来下载特定功能 Key 或者更具体,选择一个具体的 KeyValue 一对。

    小技巧

    如果您不熟悉 KeyValue 系统中,请单击 Help with key/value 纽扣。它将打开一个网页,其中完整描述了OpenStreetMap的这一概念。

  5. 寻找 railwayKey 菜单,并让 Value 为空:所以我们正在下载所有 railway 功能,但不指定任何值。

  6. 选择 Layer Extent 在下一个下拉菜单中选择 roads

  7. 按下 Run query 纽扣。

    ../../../_images/quickosm_setup.png

几秒钟后,该插件将下载OpenStreetMap中标记为 railway 并将它们直接加载到地图中。

没别的了!所有图层都将加载到图例中,并显示在地图画布中。

../../../_images/quickosm_result.png

警告

QuickOSM在下载数据时创建临时层。如果您想永久保存它们,请单击 指示器记忆 图标,然后选择您喜欢的选项。或者,您也可以打开 Advanced 菜单,然后选择将数据保存在 Directory 菜单。

9.2.3. 硬的 Follow Along: The QuickOSM Query engine

从QuickOSM插件下载数据的最快方法是使用 Quick query 选项卡,并设置一些小参数。但如果你需要一些更具体的数据呢?

如果你是OpenStreetMap查询大师,你也可以将QuickOSM插件用于你的个人查询。

QuickOSM有一个令人难以置信的数据解析器,与令人惊叹的OVERPASS查询引擎相结合,您可以根据自己的特定需求下载数据。

例如:我们想要下载属于特定山区的山峰,称为 Dolomites

您不能使用 Quick query 选项卡,您必须更具体,并编写您自己的查询。让我们试着这样做。

  1. 开始一个新项目。

  2. 打开QuickOSM插件,然后单击 Query 标签。

  3. 将以下代码复制并粘贴到查询画布中:

      <!--
    This shows all mountains (peaks) in the Dolomites.
    You may want to use the "zoom onto data" button. =>
    -->
    <osm-script output="json">
    <!-- search the area of the Dolomites -->
    <query type="area">
      <has-kv k="place" v="region"/>
      <has-kv k="region:type" v="mountain_area"/>
      <has-kv k="name:en" v="Dolomites"/>
    </query>
    <print mode="body" order="quadtile"/>
    <!-- get all peaks in the area -->
    <query type="node">
      <area-query/>
      <has-kv k="natural" v="peak"/>
    </query>
    <print mode="body" order="quadtile"/>
    <!-- additionally, show the outline of the area -->
    <query type="relation">
      <has-kv k="place" v="region"/>
      <has-kv k="region:type" v="mountain_area"/>
      <has-kv k="name:en" v="Dolomites"/>
    </query>
    <print mode="body" order="quadtile"/>
    <recurse type="down"/>
    <print mode="skeleton" order="quadtile"/>
    </osm-script>
    

    备注

    此查询是用 xml 就像语言。如果您更习惯于 Overpass QL 您可以用这种语言编写查询。

  4. 并点击 Run Query

    ../../../_images/quickosm_advanced_query.png

将下载山峰图层并在QGIS中显示:

../../../_images/quickosm_advanced_result.png

方法编写复杂的查询。 Overpass Query language 。请看一些示例,并尝试探索查询语言。

9.2.4. 基本信息 Follow Along: The DataPlotly Plugin

这个 DataPlotly 插件允许您创建 D3 矢量属性数据的绘制要归功于 plotly 类库。

  1. 开始一个新项目

  2. 加载 sample_points 图层来自 exercise_data/plugins 文件夹

  3. 按照中所述的指导原则安装插件 Follow Along: Installing New Plugins 搜索 Data Plotly

  4. 通过单击工具栏中的新建图标或 Plugins ► Data Plotly 菜单

在下面的示例中,我们将创建一个简单的 Scatter Plot 属性的两个字段的 sample_points 一层。在DataPloly面板中:

  1. sample_points 在层过滤器中, cl 对于 X Fieldmg 对于 Y Field

    ../../../_images/dataplotly_setup.png
  2. 如果需要,您可以更改颜色、标记类型、透明度和许多其他设置:尝试更改一些参数以创建下面的绘图。

    ../../../_images/dataplotly_scatterplot.png
  3. 设置完所有参数后,请单击 Create Plot 按钮以创建绘图。

绘图是交互式的:这意味着您可以使用上面的所有按钮调整绘图画布的大小、移动或放大/缩小绘图画布。此外,剧情的每个元素都是交互的:通过点击或选择剧情上的一个或多个点,将在剧情画布中选择相应的点(S)。

您可以将绘图另存为 png 静态图像或作为 html 文件,请单击 保存映射为图像 或在 添加Html 按钮显示在绘图的右下角。

还有更多。有时,在同一页上有两个(或更多)用不同变量显示不同绘图类型的绘图可能很有用。我们开始吧!

  1. 通过单击返回到主绘图设置选项卡 符号学 位于插件面板左上角的按钮

  2. 更改 Plot TypeBox Plot

  3. group AS Grouping Fieldph AS Y Field

  4. 在面板的下半部分,更改 Type of Plot 从… SinglePlotSubPlots 并让默认选项 Plot in Rows 被选中了。

    ../../../_images/dataplotly_boxplot.png
  5. 完成后,请单击 Create Plot 按钮绘制曲线图

    ../../../_images/dataplotly_subplots.png

现在,散点图和盒图都显示在同一绘图页面中。您仍有机会单击每个绘图项目并在地图画布中选择相应的要素。

小技巧

每个曲线图都有自己的手册页,可在 帮助内容 标签。尝试浏览所有绘图类型并查看所有其他可用的设置。

9.2.5. In Conclusion

QGIS有许多有用的插件可用。使用用于安装和管理这些插件的内置工具,您可以找到新的插件并对其进行最佳利用。

9.2.6. What's Next?

接下来,我们将了解如何使用远程服务器上实时托管的层。