QGIS is a Free and Open Source Software (FOSS). The support for QGIS is volunteer-driven in which volunteers provide support including fixing bugs, providing software updates, creating documentation, and supporting the user community. The main advantage of using QGIS (other than it being FOSS) is that it runs on multiple platforms; you can run QGIS on Windows, Linux, Unix, Mac OSX and Android. Information on how to install QGIS on Windows and Mac platforms can be found in the Software Installation Guide.
These tutorials are designed to get you up and running using QGIS for viewing data, editing data, performing spatial analysis, and making a map.
Here are the various components of the QGIS Project window. These components include a toolbar which gives you access to the most commonly used functions in QGIS, while the data frame is the area where you can see your data. In the browser window, you can do a variety of related tasks such as data management and access. The layers window allows you to manage and display your map layers. When you add a layer or table, it appears in your layers window. Finally, the projection button provides information about the the current projection and allows one to change the map projection.
This tutorial was created using QGIS 3.12. Instructions may vary slightly for different versions of QGIS.
There are several ways to access data within QGIS. This tutorial covers:
You can add data such as shapefiles and csv files to QGIS from your local machine. There are two ways in which you can add data from your local machine:
This example uses the WashU Spatial Data Data Directory (also known as 'gispublic') as the network share. First a 'Folder Connection' must be made to 'gispublic.' See the GIS FAQ page for instructions on mapping a network drive to 'gispublic' and creating a folder connection. Since 'gispublic' is a mounted drive, it will not immediately show up in QGIS. There are two ways in which you can add data from 'gispublic.'
There are two ways to add basemaps in QGIS; either by XYZ Tiles or the QuickMapServices plug-in.
In QGIS 3.12, you can access an OpenStreetMap basemap under XYZ Tiles in the browser window. To add the basemap to your project, click on OpenStreetMap and either drag it into the Layers or Data Frame window.
You can also add other basemaps to QGIS by connecting to a tile service. For example, let's add Stamen's terrain basemap. You can find the URLs of various basemaps at the data_sources directory of the QuickMapServices (QMS) GitHub repository and at the data_sources directory of the QMS contributed data sources repository. The URL for the basemap is found in metadata.ini under [tms]. The tile url for Stamen's terrain map is:
You can also add different base maps to QGIS via the QuickMapServices plug-in.
The method of adding a Web Map Service (WMS) from a GIS server to QGIS depends on the web map service. This tutorial will cover adding an ArcGIS MapServer layer (proprietary server) and an open source web map service.
There are two ways in which you can add data from ArcGIS MapServer. We will be adding data from the Missouri Spatial Data Information Service (MSDIS). MSDIS offers online access to two foot resolution aerial images of Missouri, among other raster and vector data layers.
GIS data provides a wealth of information beyond what you can see on the surface. For example, a county dataset can have various demographic, economic, or descriptive information about each county feature. This additional information is called an attribute and is stored in the attribute table.
If the layer is displayed, you can use the Identify Features button in the attributes toolbar to view the attribute information for a specific feature.
Other than selecting each feature one by one with your mouse pointer, you can also identify one or more features by drawing a polygon over features of interest, using a freehand tool, or specifying a search radius.
You can change how layers are represented by adjusting the layer symbology. QGIS displays data using a default 'single symbol' setting such that all features in a given layer appear with the same color and outline. The user is also able to control the symbology of the map based on categories or quantities stored in the attribute table. Examples of applying symbology to features are:
Let's apply symbology to line, point, and polygon layers using data from the MSDIS data portal. For detailed information on how to to add data to your map, refer to the Adding Data to a Map tutorial. Add these layers from MSDIS to your project:
Check the Layers window and ensure that the MO_2018_County_Boundaries is the bottom-most layer, while MO_2017_National_Register_Sites is the top-most layer. MO_2019_Katy_Trail should be the layer in the middle.
You can change the appearance of features in a layer by right-clicking on the layer > Properties > Symbology to open the Symbology window. The most commonly used symbology types (single symbol, categorized, and graduated) are demonstrated below.
With single symbol symbology, all of the features in a layer will have the same appearance. For a polygon layer, you can set the fill color, fill style and adjust the the stroke width or stroke style. For points and line layers, you can change the color, size, opacity or apply a symbol template.
Let's change the symbology of the MO_2019_Katy_Trail layer to a yellow line using this option. Open the symbology of the layer and click on the down arrow in the Color option which is next to the current selected color. Change the color by moving the tick on the color wheel or by clicking in the triangle. Move the color wheel tick and triangle to the same position as you see below. Change the width of the line to 1.0 and press OK.
You can also change the color and style of point and polygon layers and change the size of the points and the width of polygons borders. In the symbology window, the points and lines are labeled as Marker and Fill respectively. Change the point symbology for MO_2017_National_Register_Sties to black with a size of 1.0 and change the polygon symbology to grey. Once you changing the symbology for each layer, it should look like the below image.
As the name implies, categorized symbology is used to symbolize your data into categories and is best used for categorical data. For points, line, and polygon layers, you can designate symbolization based on an attribute field and apply a color ramp to the layer. Let's explore categorized symbology by categorizing the MO_2017_National_Register_Sites by whether the site is an architectural historical site or not. Right-click on MO_2017_National_Register_Sites > Open Attribute Table. Scroll until you see the AS_ARCHIT field. The AS_ARCHIT field indicates whether a site is an architectural site. We will apply the symbology using this field.
To change the symbology of the points layer, right-click on MO_2017_National_Register > Properties > Symbology. At the top of the Symbology window, change the symbology from Single symbol to Categorized. In Value, scroll to AS_ARCHIT. Click on the button with the point in Symbol and change the Size to 3.0. Click on the Classify button on the bottom of the Symbology window. In the section that shows how each value is symbolized, un-check all others... so it can be hidden. Click Apply then OK.
Your data frame should look similar as below. Note that the colors might be different. Also note that in the Layers window that the MO_2017_National_Register points layer shows the symbology based on category.
Graduated symbology is best used for quantitative data, especially continuous or interval data. It is similar to categorized symbology for you can apply a color ramp to either a points, line, or polygon layer, but the main difference is that you can apply a specific mode to the data which breaks up the data in user-specified classes. The modes that are available to choose from are Equal Count (Quantile), Equal Interval, Logarithmic Scale, Natural Breaks (Jenks), Pretty Breaks, and Standard Deviation. For demonstration purposes, let's symbolize the MO_2018_County_Boundaries by square mileage. Right-click on the MO_2018_County_Boundary layer > Open Attribute Table and scroll until you see the SQ_MILES field. We will apply the symbolization to this field. Close the attribute table.
Right-click on MO_2018_County_Boundaries > Properties > Symbology. On the top of the Symbology window change the symbology from Single Symbol to Graduated. Choose the value to be SQ_MILES and choose Blues for the color ramp. Change the mode to Natural Breaks(Jenks) and click Classify. It is important to choose an appropriate classification scheme for your data.
Click on the Histogram tab and click Load Values. You would want to choose the appropriate classification scheme based on the distribution of your data. For more information on the various schemes, refer to this article. Once you are done symbolizing your data, click OK.
Your data frame should look similar to below. The points symbology was changed to better stand out against the coloring of the polygon layer.
Coordinate systems provide a basis for identifying locations on the earth's surface. Historically, many coordinate systems have been devised, with the oldest ones assuming a flat earth and later based on a perfect sphere. Today's geographic coordinate systems are now based on a cartographic spheroid (an ellipse rotated about its axis) to more closely represent the earth's true shape and surface. Additionally, map projection coordinate systems have been developed to determine how the curved surface of the earth is depicted on a flat map.
A modern Geographic Coordinate System uses latitude and longitude to describe a location. The coordinate system is based on an origin: the intersection of a chosen prime meridian and equator. The coordinate system can pinpoint exact locations, but are not necessarily ideal for computing units of measure since the distance represented by a degree of longitude changes depending on latitude (meridians are closer together farther from the equator, converging to a point at the poles). Additionally, the earth is not a perfect spheroid. The South Pole is actually closer to the equator than the North Pole, and elevations on the surface are varied. Because of these conditions, the center of a coordinate system based on a spheroid is slightly adjusted so that part of the spheroid lines up remarkably well with a portion of the earth's surface. This adjustment is different, depending on what region of the surface is being mapped, so many different datums are used throughout the world.
A second cartographic problem is that flat maps are used to portray an area that is, in reality, a curved surface. Because of this, a map projection has to be defined when drawing a map. Some common projections can be thought of as wrapping a cylinder of paper around the earth so that it is tangent at the equator, or perhaps attaching a plane sheet of paper to the earth at one single point. Numerous map projections have been created, but all map projections will include some distortion. However, different projections allocate the distortion to certain parts of the earth while minimizing it in another, so choosing an appropriate projection for a particular map is important. In GIS, specifying or defining the coordinate system and related information for a set of data is important in producing valid analysis results because inaccurate locations and measurements can diminish the accuracy of calculated values. GIS software usually includes extensive support for a wide variety of standard coordinate systems, and contains tools for conversions and reprojections between systems. See the Specifying Coordinate Systems or Reprojecting Data sections below for more information.
More coordinate system information is available through the built-in ArcGIS documentation under the heading "Map Projections and Coordinate Systems", as well as in the following articles:
On-the-fly projection is when you change the projection of QGIS project but not the projection of the layer. Any subsequent layer added to the project will take the specified projection. While it is recommended to change the projections within the layer, on-the-fly projection is acceptable in such situations in which one might to take an initial look at all the layers but will not be performing any spatial analysis or creating a map of the layers but you want the layers to be viewed in a specific projection. You can change the projection on-the-fly by pressing the EPSG button on the bottom right-hand corner of the QGIS Project window. Let's change the projection to one that is more suitable to Missouri such as State Plane Missouri East.
1. Click on the EPSG button. The Project Properties | CRS window will pop-up.
2. In the Filter search box type NAD 1983 State Plane Missouri and under Predefined Coordinate Reference Systems you will see several results.
3. Scroll down until you see NAD_1983_StatePlane_Missouri_East_FIPS_2401_Feet. The Authority ID is EPSG: 102696.
4. Click Apply then OK. You might get a Select Transformation for MO_2018_County_Boundaries prompt. Keep the default settings and click OK.
If you want to permanently change the projection of a shapefile, then you will have to export the shapefile into a new projection.
Once you finish creating your map in the Layout view, you can export it in a variety of formats. To export your map, go to Layout and you will see three options: Export as Image, Export as SVG, and Export as PDF.
Export as Image: You can export your map in a variety of image formats such as JPEG, GIF and TIFF.
Export as SVG: In more current versions of QGIS, there might be an issue with this function due to bugs in the SVG library. If the SVG output does not look good, then it is recommended that you try exporting the layout to PDF.
Export as PDF: You can export the map as an Adobe PDF.