制作地图 (QGIS3)

通常需要创建一张可以打印或发布的地图。QGIS有一个功能强大的工具,称为 Print Layout 标签,可用于获取GIS图层并将其打包以创建地图。

内容说明

本教学示范如何制作一张包含基本制图元素的日本地图,像是网格线、方位标示、比例尺、图例与标签、插页小图等等。

你还会学到这些

  • 如何查看和更改QGIS项目变量

  • 如何使用 QGIS 表达式

取得资料

这边使用的是 Natural Earth dataset 中的 Natural Earth Quick Start Kit ,这些资料包含相当不错的全球图层,而且可以直接载入到 QGIS 当中。

下载 Natural Earth Quickstart Kit

资料来源 [NATURALEARTH]

操作流程

  1. 下载然后解压缩 Natural Earth Quick Start Kit 的资料。打开 QGIS,然后在 Browser 的面板中找到 Natural Earth quick start 资料夹。展开此资料夹,就可以找到一个叫 Natural_Earth_quick_start_for_QGIS_v3 的专案档。此专案档含有 QGIS 相容格式的图层资料。点两下以开启此专案。

../../_images/180.png
  1. 您可能会注意到地图上有希腊标签。该项目使用变量来设置语言。我们可以通过进入 Project ‣ Properties 来更改变量。

../../_images/237.png

注解

专案变数可以用来储存每个专案特有的一些设定,在你要撰写 QGIS 表达式的时候也可以使用。Natural_Earth_quick_start_for_QGIS_v3 专案本身已经包含了不少预先定义的变数,所以可以使用它们来设定本专案的样式。

  1. 切换到 Project Properties 对话框中的 Variables 标签。找到 project_language 变量,然后在 Value 列上单击以对其进行编辑。将语言更改为 name_en,然后单击 OK

../../_images/327.png
  1. 回到 QGIS 主视窗,按下在 Map Navigation Toolbar 中的 Refresh 按钮,就可以看到现在英文标签已经套用在地图上了。

../../_images/414.png
  1. 使用在 Map Navigation Toolbar 中的平移与缩放地图工具,移动到日本的位置。

../../_images/514.png
  1. 你可以把一些我们在这里用不到的地图图层给关起来。展开 z5 - 1:18m 资料结然后取消勾选 ne_10m_geography_marine_polysne_10m_admin_0_disputed_areas 图层旁边的方格。在我们真的制作适合列印的地图前,我们还得挑选一个适当的地图投影。本专案的预设 CRS 是 EPSG:3857 Pseudo-Mercator,在线上地图中非常流行,而且也很适合我们的目的,所以我们就把沿用这个预设的投影模式。现在前往 Project ‣ New Print Layout

../../_images/614.png

注解

在日本地区,其实还有一个投影法可以使用,称为 Japan Plane Rectangular CS (日本平面矩形座标系统)。这个投影法可以最小化投影造成的变形。它目前把全日本分成 18 个子区,如果你考虑把地图范围缩到更小的话,使用这个 CRS 会更好一点。

  1. 会有一个视窗跳出来要求你输入设计标题,这边可以先空着,点 OK 即可。

../../_images/713.png

注解

如果标题是空白的话,程式会自动产生一个像是 Layout 1 的预设标题。

  1. 在 Print Layout 视窗中,按下 Zoom full 钮以显示整张地图。

../../_images/813.png
  1. 现在我们要把在 QGIS 画布中的东西放进来,请选择 Add Item ‣ Add Map

../../_images/913.png
  1. Add Map 模式启动之后,必须要在地图版面上拖曳一块你想插入地图的区域。

../../_images/1013.png
  1. 你会看到这个区域马上就填上了 QGIS 画布中的东西。不过它未必会跟我们所要的制图区域完全重合,这个时候可以使用 Edit ‣ Select/Move itemMove Content 然后直接把在这个区域里的东西拖曳到你所想要的范围。

../../_images/1116.png
  1. 地图的比例尺也可以稍做调整,在右侧的 Item Properties 分页中的 Scale 栏位输入 10000000 看看。

../../_images/1214.png
  1. 接下来我们会插入一个东京区域的放大版地图,不过在进行任何更动之前,要把已经弄好的底图给锁起来。请勾选 Lock layers 以及 Lock styles for layers,这两个选项是用来确保接下来在 QGIS 画布上的更动,不会连带影响到设计视窗中已经弄好的部分。

../../_images/1313.png
  1. 切换至 QGIS 主视窗,把 z5 - 1:18m 图层群组关起来,然后勾选 z7 - 1: 4m 群组。这个群组更适合显示缩放等级高的地图。使用在 Map Navigation Toolbar 中的平移与缩放地图工具,移动到东京的位置。

../../_images/1412.png
  1. 接下来就可以弄插页小图了。切换到 Print Layout 视窗,然后选择 Add Item ‣ Add Map

../../_images/1511.png
  1. 在你想要插入东京区域地图的地方拉一个长方形。现在我们有 2 个地图物件在同一个设计稿上了,所以如果你要改动其中任意一个地图,就要先确认正确的地图物件有没有被选取起来。

../../_images/1610.png
  1. Items 分页中,请选择我们刚刚加入的 地图 2 物件,然后在 Item properties 分页中,往下捲动到 Frame 的栏位,把那个框框勾起来,这样我们就能自由调整小插图的外框,使之与主要地图区隔开以方便辨识。

../../_images/1711.png
  1. 这里有个很方便的功能,可以帮你标示小插图是位在主地图的哪里。首先在 Items 分页中选择 地图 1,然后在 Item properties 分页中,往下捲动到 Overviews 的栏位,点选 Add a new overview 的按钮。

../../_images/1810.png
  1. Map Frame 选单中选择 地图 2,就可以把 地图 2 的小图范围标示在 地图 1 中。

../../_images/198.png
  1. 现在插页小图也完成了,下一步就来加个格线到主地图上。在 Items 分页中选择 地图 1,然后在 Item properties 分页中,往下捲动到 Grids 的栏位,点选 Add a new grid 的按钮,然后再按下 Modify grid…

../../_images/207.png
  1. 在预设的情形中,格线会使用与选择的地图相同的投影法标示,不过使用「经纬度」标示的格线却更常见,而且使用者也易于阅读。所以这里我们来为格线选择一个不同的 CRS 试试看。请点选格线栏位中,CRS 右侧的 Change… 按钮。

../../_images/2112.png
  1. Coordinate Reference System Selector 的视窗中,在 Filter 内输入 4326,然后选择 WGS84 EPSG:4326 当作格线的 CRS,按下 OK

../../_images/2210.png
  1. Interval 栏位中,把 XY 都设成 5 度,然后再适当的调整 Offset,就可以设定格线要在哪出现。

../../_images/238.png
  1. 往下移到 Grid frame 的区块然后勾选 Draw coordinates。预设使用的格式是 经纬度 但是却是使用像数字格式一样的显示。我们可以修改设定让数字后方添加度数的标志。选择 自订 然后点选在旁边的 Expression 按钮。

../../_images/245.png
  1. 输入如下的表达式就可以建立含有数字和度数符号的字串。

concat(to_string(@grid_number), '°    ')
../../_images/254.png
  1. 现在格线就有了我们定义的表达式标签。你可依照你喜欢的样式,调整 LeftRightTopBottom 的标签设定。

../../_images/264.png
  1. 现在我们要加上一个方形区块来摆放其他的地图元素,项是指北符号、比例尺和图例。选择 Add Item ‣ Add Shape ‣ Add Rectangle

../../_images/274.png
  1. 可以修改矩形的 Style 以和地图的背景颜色一致。

../../_images/284.png
  1. 再来就是加个指北箭头。QGIS 本身有内建一些不错的现成图片,其中当然也包括许多种类的指北箭头,只要选择 Add Item ‣ Add Picture

../../_images/293.png
  1. 用滑鼠左键拖曳出一个方形,然后在右侧的 Item Properties 中把 Search directories 点开,就可以选择你喜欢的图案了。

../../_images/303.png
  1. 再加个比例尺好了。选择 Add Item ‣ Add Scalebar

../../_images/3110.png
  1. 在你想要比例尺出现的地方按一下,记得在 Item Properties 中确认这个比例尺显示的是 Map 1 的比例尺。各种你想要的设定都可以在这边调整。在 Segments 的栏位中,调整 Fixed width200 单位然后依照你想要的方式调整黑白线段。

../../_images/328.png
  1. 总算到了上标题的时间。选择 Add Item ‣ Add Label

../../_images/331.png
  1. 在地图上拖曳标签的范围,接着展开 Item Properties 中的 Label 栏位,然后就可以输入文字。接着利用相似的方法给资料和软体加上提供者的文字。

../../_images/341.png
  1. 当你把地图调整到最佳状态后,就可以输出成图片档、PDF 或是 SVG 档了。这里我们试试看转存成图片档:选择 Layout ‣ Export as Image

../../_images/351.png
  1. 存成任一种你喜欢的格式即可。这里放的是存成 PNG 的图片。

../../_images/output.png