Geographic Information Systems (GIS) are tools for working with spatial data. If you work with mapping databases or other spatial data professionally, or just as a hobby, GIS is an attractive method of organizing the data and relationships involved. The problem is that a lot of the GIS software out there is designed for enterprise or government use and comes with a big price tag.
That's where QGIS comes. QGIS (formerly known as Quantum GIS) is an open desktop GIS application that is free and cross-platform. QGIS provides tools for working creating visual representations like graphical maps, as well as working directly with the underlying data. Raster and vector graphics are supported, and the software supports imports from many other formats such as PostGIS and MapInfo.
Best of all, QGIS is extensible using plugins built-in C++ or Python in combination with open source databases like PostgreSQL and MySQL. Once you've mastered the basic functionality and understand how to create geospatial visualizations from vector and raster data, you can begin building your own plugins and new functionality.
QGIS is an excellent free tool for working on your own spatial data. It is also widely used in many organizations including the NSA, and government agencies in Switzerland and Austria (https://en.wikipedia.org/wiki/QGIS). The functionality of QGIS is comparable to commercial software like ArcGIS and can provide you with a head start in learning GIS development techniques.
In this guide, you'll find reviews of four different Massively Open Online Courses (MOOCs) that will take you from QGIS novice to advanced topics.
Learn geographic information systems (GIS) with QGIS
This online course offered by Udemy is an excellent primer for newcomers to the GIS world. The instructor, Dr. Arthur J. Lembo is a professor of geography and geosciences at Salisbury University and has been teaching GIS for over 20 years.
The course will take you through a complete overview of basic GIS operations and how to use the QGIS software to create great-looking, data-driven maps.
From the course page:
Are you interested in gaining skills in the growing field of geographic information science? Are you already a GIS professional but want to learn how to use a powerful free and open source GIS product? If so, this course is for you.
Learn the QGIS Interface
In this introduction to the QGIS interface, you'll get an overview of basic functions through exploring the location of controls and menus for project function, plug-ins, vectors and rasters, and other basic components of the interface.
Practical Analysis with Vector and Raster data
At its most basic level, a GIS is simply a collection of points representing spatial relationships. You can use this data to build visual representations like maps, but you can also analyze and manipulate the data directly. This section of the course will show you how to edit and analyze the data underlying your visual map.
- Edit vector data to add real-world features like roads, streams, and buildings to your map.
- Perform analysis on vectors to enable real-life decision making based on the data associated with the features you've added to your map.
- Perform a multi-criteria raster analysis to bring together many different layers and components of your GIS data.
Cartography with QGIS
QGIS provides a powerful set of tools for generating aesthetically pleasing and function visual map representations of your GIS data. In this section, you will learn to use the style, labeling, and other key cartography functions to build beautiful maps.
- Getting started with cartography and QGIS
- Styling your QGIS Map
- Labeling your QGIS Map
- Final cartographic elements in your QGIS Map
GIS and the Internet
Learn to import data from existing real-world GIS databases like Open Street Map, and represent that data in your project as a vector. In this section, you'll also see how to put your projects on the internet and make them available for viewing or collaboration by other GIS developers.
Ready to get started learning QGIS from the ground up? Start your course today at Udemy (link to the course on Udemy).
Udemy – QGIS 3.0 for GIS Professionals
If you already have some experience with GIS and you want to dive straight into the good stuff with QGIS, this intermediate-level course that will get you started with building complex GIS projects using Python packages, PostgreSQL, and other advanced functionality of QGIS.
Instructor Michael Miller has over 20 years of experience with geospatial applications. His approach to the course is practical and no-nonsense, taking you directly to the core of each topic to teach you exactly what you need to know to get working fast. If you're comfortable with GIS, Python, and other technologies surrounding geospatial development, this course is an excellent primer for jumping into open source development with QGIS.
From the course page:
By the end of this course, students will have a working knowledge of how to interact with the QGIS interface, the data storage options that are available to them, how to create beautifully styled maps for printing, the basics of analyzing geospatial data, and much more!
- Understanding what QGIS is
- Overview of open source software
- Installing QGIS
Exploring the QGIS interface
Get an in-depth introduction to all of the features and interface components of the QGIS environment. Having an intuitive grasp of the layout and controls will allow you to stay focused on your project rather than hunting around for tools and menu items.
- Toolbars and Panels
- QGIS Plugins
- Coordinate Reference Systems
- Measuring and Identifying
- Panning, zooming, and bookmarks
- What happens when you save a project?
Loading data into QGIS
When you're working on a real-world project, you likely need to access data from outside sources. QGIS provides functionality for importing and integrating data from a broad range of other GIS applications and databases. In this section of the course, you'll learn to load data of various formats.
- Loading Shapefiles into QGIS
- Loading GeoJSON, GPX, KML, and more
- Loading ESRI File Geodatabases
- Loading data from SpatiaLite
- Loading data from a GeoPackage
- Loading data from PostGIS
- Background maps from the OpenLayers plugin
- Background maps as XYZ tiles
- Georeferencing a raster
- Loading raster data
Working with attributes
Creating thousands of geographically referenced features doesn't do you much good if you don't know what any of them are. Adding attributes to your spatial data is an important part of developing useful and effective GIS projects.
Introduction to the attribute table
Using the field calculator for simple calculations
Using the field calculator for geometry calculations
Using the field calculator for more advanced calculations
Selecting features from the map
Selecting features by attributes
Selecting a feature by spatial relationships
Using feature filters (Query Definitions)
Symbolizing GIS data
When you're dealing with data sets that span countries or even the entire world, keeping your symbology organized is a major task. QGIS provides features for handling rules based symbols, grouping symbols by category, and plenty of other functions that you'll need to create a cohesive symbology across large mapping projects.
- Symbolizing simple point features
- Symbolizing simple line and polygon features
- Symbolizing by category
- Symbolizing by quantity
- Rule-based symbology
- Working with Labels
- Symbolizing Rasters
Creating maps for printing with the map composer
One of the most useful features of QGIS is its tools for creating great-looking visual representations of your data. Learn to use the tools available for printing maps and features using the map composer.
- Introduction to creating maps for printing
- Adding scale bars, north arrows, and legends
- Adding Locator maps, coordinate grids, and more
- Creating a map atlas
- Creating the grid for a map atlas
- Working with reports in QGIS 3.0
Creating and editing vector data
Use QGIS's powerful vector data features to create, edit data sets that will make up the topology of your project.
- The QGIS Vector Geometry Model
- Creating new layers as shapefiles, or in a database
- Creating and editing point data
- Creating and editing line data
- Creating and editing polygon data
- Working with contiguous polygons
- Working with topology
Analyze large scale data sets with ease using QGIS's vector data analysis features.
- Fixed and variable distance buffers
- Clipping and Intersection
- Summary statistics
- Dissolving features
- Geometric difference tool
- Digital Elevation Models and Terrain Analysis
- Raster Calculator and Contour lines
- Rasterizing a vector layer and creating a proximity grid
- Reclassifying a grid
- Raster modeling
The geoprocessing framework and automation
Implement batch processing via native and third-party algorithms, or develop your own using Python.
- The geoprocessing framework
- The graphical modeler – inputs
- The graphical modeler – algorithms
- The Python console
- The Python editor
Are you a GIS pro looking to move into the open-source world with QGIS? Sign up for this in-depth course on Udemy (link to the course on Udemy).
LinkedIn Learning – Learning QGIS
This is another course for professionals who already have a working knowledge of GIS in general. Instructor Gordon Luckett is a GIS consultant, trainer, and developer. He specializes in Oracle Spatial and Microsoft SQL Server Spatial.
One great benefit of LinkedIn Learning's course platform is its one-month free trial that allows you to access the entire catalog of courses. If you want to explore a variety of topics and test out the online learning environment before committing to a course, LinkedIn Learning is a great risk-free option.
This course focuses on enriching your GIS data to make more effective maps. You'll learn to create 3D maps, stylized visualizations, heat maps, and overlays. You'll also learn to use Python plugins to bring added functionality to QGIS.
Understanding and Installing QGIS
Get QGIS up and running on your system and ensure the optimum configuration for your project and development environment.
- Installing QGIS
- Save Installing QGIS
- Understanding the types of QGIS installs
- Overview of QGIS features
Vector Data with QGIS
Understand when to use vector data and how to work with it. QGIS provides support for a large variety of data sources and types and this section will explore the tools available for editing and analyzing that data.
- Types of vector data in QGIS
- Add shapefiles to QGIS
- Add WFS data to QGIS
Raster Data with QGIS
When is it more appropriate to use raster data for GIS representations? How to manage and analyze the various formats and approaches to using raster data in QGIS.
- Types of raster data in QGIS
- Add ECW data
- Add WMS data
- Add DEM data
- Creating contour lines from DEM
Creating 3D maps
Adding elevations, structures and other 3D features to your maps is one of the most powerful functions of QGIS. Learn what you need to know to configure 3D objects and animations.
- 3D configuration and elevation
- 3D animations
Create stunning visualizations by customizing the style and appearance of your points, lines, and polygons. Create thematic layers to switch between different styles and data sets.
- Point layers
- Polyline layers
- Polygon layers
- Thematic layers
- DEM layers
Labels are added to a map to display information from an object's attributes. Use QGIS's labeling functions to help you add, edit and organize labels.
Printing with Print Layout
Generate aesthetically pleasing visual representations of your GIS data using QGIS's robust map composer and print features.
- Adding maps
- Adding elements
Creating New Data
Learn to import data from a CSV file, or create new vector data within the QGIS interface.
- Creating new vector data
- Exporting layers to shapefiles
- Adding data from Excel (CSV)
- Editing existing data
- Save Editing existing data
Using Advanced Tools
Go beyond the basics and use advanced tools to create complex data visualizations and features for your maps.
- Overlay two vector layers
- Create a heatmap from points
- Create centroids from polygons
The QGIS developer community has created over 1,000 plugins that can be installed directly within the interface using the QGIS Plugin Manager. Use these plugins to add features like street view, advanced search functions, animations, and other cool stuff.
- Adding and using Street View plugin
- Adding and using qgis2web plugin
Python in QGIS
Make QGIS even more powerful by developing your own plugins and extensions in Python, R, PostgreSQL, and the many other compatible open source technologies available for extending the functionality of your geospatial projects.
- Using the Python Console
- Create a Python script
Take advantage of LinkedIn Learning's 30-day free trial offer and get started on this course today. Sign up at LinkedIn Learning (link to the course on LinkedIn Learning).
Udemy – Core Spatial Data Analysis: Introductory GIS with R and QGIS
Going beyond the basic functionality of the interface, this course focuses on how to use QGIS in conjunction with the R programming language to conduct spatial data analysis.
Dr. Minerva Singh designed this course to teach the concepts of spatial data analysis through practical exercises. You will begin by learning what spatial data analysis is and what it's used for, and then you'll see how to work raster data and vector data to conduct analysis on real spatial data using R and QGIS.
Dr. Singh is a data scientist with a master's degree in geography and environment from Oxford, and a Ph.D. from Cambridge in tropical ecology. She specializes in spatial data analysis using R, QGIS, and Python.
This course is particularly valuable for researchers and professionals who are interested in using GIS for analysis in demographic research, environmental data, mining and natural resources, forestry management, and any other field involving geostatistics. The R programming language is an ideal tool for linear and nonlinear analysis, data clustering, and other complex statistical analysis functions. Combining R and QGIS gives data scientists working with geospatial data a powerful toolset for conducting all kinds of spatial analysis research.
Introduction to Spatial Data Analysis
- What is Spatial Data Analysis?
- Quick Introduction to Some Concepts Related to Spatial Data
Working with Raster Data
Learn to import raster data into the QGIS and R environments. Then modify, categorize and reclassify that data.
- Read in Raster Data Using QGIS
- Read in Raster Data in R
- Modify CRS of Raster Bands
- Modify Raster Stack in R
- Plot Multiple Bands as false color composites
- Band Arithmetic in R
- Band Arithmetic in QGIS
- Reclassify to Categorical Raster
- Categorical Raster Statistics in R
- Categorical Raster Statistics in QGIS
- Resampling Raster Data in R
- Clipping Raster Data in R
- Clipping Rasters in QGIS
- Deriving Topographic Products in R
- Topographic Calculations in QGIS
- Basic Statistics Calculations on Rasters in R
Working with Vector Data
Use R and QGIS to import, edit and visualize your vector data sets.
- Read Vector Data in QGIS
- Read Vector Data in R
- Explore Shapefile Attributes in R
- Basic Visualizations with Shapefiles in R
- Subset and Split Shapefiles in R
- Splitting and Merging Shapefiles in QGIS
- Basic Analysis on Shapefiles in R
The course is available here (link to the course on Udemy).
QGIS tutorials and tips
Using these online courses and links to other resources, you will gain the skills and knowledge needed for building complex spatial data visualizations, maps, geotagging databases, and any other GIS-based applications. Combined with a solid understanding of Python, R, PostgreSQL, and software development techniques, you'll be a valuable asset to any organization working with GIS technologies.