GIS的主要用途之一是制作用于打印或出版的地图。QGIS提供了名为“打印布局(Print Layout)”的制图利器,通过组合各种图层进行地图制作。

任务概览

本教程使用QGIS 3.10 为您演示怎样创建一幅包含各种标准地图元素的地图,如地图插图、网格、指北针、比例尺、标签等。建议您按照本教程中的详细制图步骤,通过QGIS使用示范数据一步一步实际动手操作,完成教程中的制图任务。

将会学到的其他技巧

  • 如何查看和修改QGIS项目变量(Project variables)。

  • 如何使用QGIS表达式(expressions)。

获取示范数据

本教程使用自然地球快速入门工具集(Natural Earth Quick Start Kit)为示范数据,其中包含多个覆盖全球的图层,可以通过QGIS直接加载。示范数据下载地址为:
http://naciscdn.org/naturalearth/packages/Natural_Earth_quick_start.zip。

将QGIS界面设置为简体中文

制作地图之前,请将您的QGIS软件界面设置为简体中文(如果您已经设置过了,可以忽略本节后续内容)。操作方式为:通过菜单【Settings】->【Options…】打开Options对话框,选择【General】选项卡,找到“Override system locale”前面的复选框并打勾,在“User Interface Translation”下拉框中找到并选择“简体中文”,点击【OK】按钮。退出并重新启动QGIS,看到的即是简体中文界面。

详细制图步骤

  1. 下载并解压缩自然地球快速入门工具集数据包(Natural_Earth_quick_start.zip)。打开QGIS,通过【浏览】面板找到Natural Earth quick start文件夹。展开该文件夹并找到名为Natural_Earth_quick_start_for_QGIS_v3的文件。该文件为QGIS项目文件,包含多个设定了样式的图层。双击该项目文件,QGIS将打开该项目并显示项目中包含的地图。

  2. 从地图窗口中显示的内容可以看出,该项目的地图标签默认显示为希腊语。QGIS项目文件通过变量(variables)设定项目的语言环境。可以通过菜单【项目】->【属性】修改该项目的语言设置。

    备注:项目变量(Project variables)用来存储项目级的变量值。在QGIS中,凡是可以使用表达式(expressions)的地方都可以使用这些变量值。Natural_Earth_quick_start_for_QGIS_v3项目附带了许多预先设定好的变量,用于在该项目中设置各种样式。

  3. 通过菜单【项目】->【属性…】打开“项目属性”对话框,选择“变量”选项卡,找到“project_language”变量,点击该变量在“值”一列中的对应取值,将其修改为name_en ,点击【OK】按钮。

  4. 返回QGIS主窗口,点击【地图导航工具栏】中的【刷新】按钮,地图将被重新渲染,地图标签将显示为英文。

  5. 使用【地图导航工具栏】中的【平移】、【放大】、【缩小】等工具按钮,把地图定位到感兴趣的区域。

  6. 可以关掉一些不需要的图层:在【图层】面板中,展开z5-1:18m文件夹,取消ne_10m_geography_marine_polys和ne_10m_admin_0_disputed_areas 这两个图层前面复选框的选中状态。在打印地图之前,建议先选择一个合适的地图投影。本项目的默认坐标参照系(CRS)是EPSG:3857 Pseudo-Mercator,在网络制图领域应用很广,是个比较好的选择,因此我们将其保留不做修改。点击菜单【项目】->【新建打印布局…】。

  7. 弹出的对话框要求输入打印布局的标题,可以先不填,点击【OK】按钮。

    备注:如果输入的标题为空,系统会自动为打印布局分配一个默认标题,如布局1。

  8. 在打印布局窗口中,点击【全图显示】按钮,完整显示打印布局范围。

  9. 把QGIS主窗口中看到的地图插入到打印布局窗口中:点击菜单【添加条目】->【添加地图】。

  10. 当【添加地图】模式激活后,按下并拖动鼠标左键,在要添加地图的地方绘制一个矩形区域。

  11. 矩形区域内渲染出了QGIS主窗口中看到的地图,这里显示的地图未必完整覆盖了我们感兴趣的区域。可以通过菜单【编辑】->【选择/移动条目】和【编辑】->【移动内容】移动打印布局窗口中的地图,使我们感兴趣的区域居中显示。

  12. 通过点击【条目属性】,输入合适的比例尺调整地图的缩放比例。

  13. 现在得到了一个放大到感兴趣区域的地图。在对QGIS主窗口中的图层做任何修改之前,找到打印布局窗口【条目属性】中的【锁定图层】和【锁定图层样式】复选框并打勾。这将确保如果后续关闭了一些图层或者修改了图层样式,打印布局中的地图视图将不会随之发生变化。

  14. 切换到QGIS主窗口,关闭图层组(layer group)z5-1:18m,打开图层组z7/1:4m,后者的样式更适合于放大后的视图。使用【地图导航工具栏】中的【平移】和【缩放】工具按钮,把地图定位到感兴趣的区域。

  15. 添加地图插图(map inset):切换到打印布局窗口,点击菜单【添加条目】->【添加地图】。

  16. 在需要放置地图插图的位置绘制一个矩形。现在打印布局窗口将有两个地图对象,当对地图进行更改操作时,请首先确保选中正确的地图对象。

  17. 在【条目】面板中选择地图2,选择【条目属性】,下拉到【框架】面板,在【框架】复选框上打勾。

  18. 打印布局可以自动高亮显示插图里的区域在主地图中的位置。在【条目】面板中选择地图1,在【条目属性】面板中下拉到【鹰眼图】,点击【添加新的鹰眼图】按钮。

  19. 在【地图框架】下拉框中选择地图2,地图1中将会高亮呈现地图2中显示的地域范围(下图中的红色区域)。

  20. 完成地图插图制作后,为主地图添加网格线:在【条目】面板中选择地图1,在【条目属性】面板中下拉到【网格】,点击【添加新网格】按钮,接着点击【修改网格…】按钮。

  21. 默认情况下,网格线与所选择的地图使用相同的地图单位和投影。然而,由于网格线通常是按度来显示的,我们可以给网格线选择不同的坐标参照系。点击【坐标参照系(CRS)】旁边的【更改…】按钮。

  22. 在【坐标参照系选择器】对话框中,在过滤框内输入4326,在搜索结果中选择WGS84 EPSG:4326 作为网格线的坐标参照系,点击【OK】按钮。

  23. X方向和Y方向都选择间隔5度。偏移量可以用来控制网格线出现的位置。

  24. 下拉到【网格框架】区,在【绘制坐标】复选框前面打勾。默认格式是小数,选择【自定义】,点击旁边的表达式按钮。

  25. 输入下面的表达式,可以使网格线显示为类似于a°的格式。

 concat(to_string(@grid_number), '°    ')

  1. 网格线的标签变成了通过表达式定义的标签格式,调整上、下、左、右位置,直到满意为止。

  2. 添加一个矩形对象来保存其他的地图元素,如指北针、比例尺和标签。点击菜单【添加条目】->【添加形状】->【添加矩形】。

  3. 可以更改矩形的样式以匹配地图背景。

  4. 为地图添加指北针,QGIS提供了大量与地图相关的图片——包括许多类型的指北针。点击菜单【添加条目】->【添加图片】。

  5. 按下并拖动鼠标左键,绘制一个矩形。在右侧的面板中,点击【条目属性】,展开【搜索目录】,选择合适的图片。

  6. 为地图添加比例尺。点击菜单【添加条目】->【添加比例尺】。

  1. 在需要添加比例尺的地方点击鼠标左键。在【条目属性】中,确定选择了需要显示比例尺的地图即地图1,选择合适的比例尺风格。在【线段】面板中,把固定宽度改为200单位,修改线段风格直至满意为止。

  1. 为地图添加标签。点击菜单【添加条目】->【添加标签】。
  2. 在需要添加标签的地方绘制一个方框,在【条目属性】中展开【标签】面板,输入文字作为标签显示的内容。
  3. 完成打印布局调整后,可以将打印布局输出为图片、PDF或者SVG格式。以输出为图片为例:点击菜单【布局】->【导出成位图】。
  4. 保存地图图片。
  5. 下图即为保存的地图图片,是不是很酷?

    本教程到此结束。

吴建玲

2020年5月28日


版权声明

本文欢迎转载,转载时请注明出处。

本文主要翻译并改编自qgistutorials网站,原文链接为www.qgistutorials.com/en/docs/3/making_a_map.html,原文已根据《知识共享署名4.0国际许可协议(Creative Commons Attribution 4.0 International License)》获得许可,在此向原文作者乌加尔·甘地(Ujaval Gandhi)致以敬意,感谢他为分享QGIS技术做出的贡献。

QGIS 3.10 制图手把手教程相关推荐

  1. [java手把手教程][第二季]java后端博客系统文章系统——No10

    项目github地址:github.com/pc859107393- 实时项目同步的地址是国内的码云:git.oschina.net/859107393/m- 我的简书首页是:www.jianshu. ...

  2. 图文手把手教程--ESP32 MQTT对接EMQX本地服务器(VSCODE+ESP-IDF)

    本文内容 1)使用MQTT_TCP例程,ESP32通过MQTT协议与MQTT本地服务器(EMQX)进行通信. 2)如何搭建EMQX MQTT本地服务器. 3)如何使用MQTT.fx客户端调试工具或MQ ...

  3. 腾讯云服务器购买详细流程(手把手教程)

    第一次购买腾讯云服务器很多同学不会选择,云服务吧写了一篇手把手教程,分享给大家: 腾讯云服务器购买流程 购买腾讯云服务器很简单,首先你需要注册一个腾讯云账号,使用微信或QQ注册即可,很简单.账号注册后 ...

  4. Amazon.com 美国亚马逊 直邮中国 手把手教程(转)

    什么值得买已经发布2014最新版美亚直邮攻略 海淘攻略:美国亚马逊 直邮服务 手把手教程(2014最新版) ,调整幅度较大,值友们可以移步到新攻略中查看. 相比德国.英国亚马逊,美国亚马逊的大部分商品 ...

  5. QGIS 3.10 插值与等值线提取

    插值(Interpolation)通过离散的点状数据生成连续的面状数据,是常用的GIS分析技术.现实世界中的很多现象是连续的,比如高程.土壤.温度等,很难通过对整个表面进行测量的方式完成对这些连续现象 ...

  6. 图文手把手教程--ESP32 一键配网(Smartconfig、Airkiss)

    本文内容 1)使用smart_config例程,使用乐鑫ESPTouch APP或者微信公众号配网. 2)修改smart_config例程,使ESP32复位后,如果已配过网,则不再进行配网,而是直接连 ...

  7. 在QGIS 3.10中访问Geoserver中发布的服务

    在QGIS 3.10中访问Geoserver中发布的服务 1 新建 WMS 连接 geoserver的发布教程有很多就不再说,建立在geoserver已经发布的前提. 本次在QGIS中查看的是webg ...

  8. 虚拟机VMware 9安装苹果MAC OSX 10.8图文教程

    前些天虚拟机VMware Workstation 9出来,相信大家都已经熟悉VM9了,至于MAC OSX 10.8系统,那也是出来一段时间了,本篇文章就是来讲解VMware Workstation 9 ...

  9. QT5.10.0安装教程图文教程以及安装成功QT5.10.0后环境配置图文步骤

    引用:https://www.cnblogs.com/chenmingjun/p/8392713.html QT5.10.0安装教程图文教程以及安装成功QT5.10.0后环境配置图文教程 文章目录 Q ...

  10. Web 开发中应用 HTML5 技术的10个实例教程

    HTML5 作为下一代网站开发技术,无论你是一个 Web 开发人员或者想探索新的平台的游戏开发者,都值得去研究.借助尖端功能,技术和 API,HTML5 允许你创建响应性.创新性.互动性以及令人惊叹的 ...

最新文章

  1. javascript网络_没有JavaScript的网络外观
  2. 腾讯终于良心了!桌面混乱终于有救了
  3. Win7各版本功能对比
  4. solidworks经典实例网盘下载_Solidworks自学视频教程(附源文件)讲解详细到位,成就设计高手...
  5. 【转】HashTable 和 HashMap的区别
  6. 【矩阵乘法】递推(ssl 1532)
  7. 大型网站服务器 pdf,大型网站服务器容量规划[PDF][145.25MB]
  8. java资源文件获取属性_Java读写资源文件类Properties
  9. windows下,linux下elasticsearch安装插件head插件的步骤
  10. 微信取消分享后还是执行成功函数
  11. 电话号码本的快速查找
  12. c语言贪吃蛇自动走,C语言 贪吃蛇
  13. visio如何粘附或取消粘附连接线
  14. oracle卸载步骤图解,Oracle安装卸载图文教程详解
  15. 调用微信接口实现微信授权登陆主体内容【code换取openid以及session_key】
  16. 【5G核心网】5GC核心网之网元AUSF
  17. 解决IDEA启动失败 Improperly specified VM option...问题
  18. 如何在服务器查看文件,如何在服务器地址上查看文件夹
  19. linux下挂载硬盘!
  20. mysql 更新的进度_如何查看mysql执行进度

热门文章

  1. 项目实施计划及总体设计报告(大纲)
  2. php redis菜鸟教程,PHP 使用 Redis
  3. 最新版本的000-919题库
  4. 阿里云语音合成1.0版
  5. 论文翻译|疾病自动编码|Clinical-Coder: Assigning Interpretable ICD-10 Codes to Chinese Clinical Notes
  6. 【元胞自动机】基于元胞自动机模拟和改进遗传算法的动态网络分配模型分析matlab仿真
  7. 【.NET程序员面试题----初级】第一卷
  8. 柳婼、知乎PAT经验分享汇总
  9. Spring 最常用的注解,史上最强整理!
  10. 尚学堂•百战程序员之技术人生