QGIS
QGIS is an open source geo-information system, which is available for Windows, Mac and Linux. It is an extremely powerful tool, but for the amount of functions it is relatively easy to learn. There are lots of tutorials available on YouTube, a german one which is quite good is from the University in Weihenstephan, https://www.youtube.com/@diabektriesdorf6769
There are also various communities around QGIS, and some conferences which have video material online as well as in person events.
DOwnload and installation of QGIS is straightforward, the software is obtained here: https://qgis.org/ The website also has extensive documentation found here: https://qgis.org/resources/hub/
The author uses QGIS 3.34 on Linux Mint, installed via the package manager from Linux Mint. There are some dependencies for many of the plugins, which are not automatically installed: Python3-shapely needs to be installed manually in order to use many of the QGIS plugins. Python3-geopandas is also required by selected plugins.
Plugins
The following plugins are used in this write-up for various tasks:
- CIGeoE Merge Lines (if you want to merge the OSM track segments into a single track)
- CIGeoE Merge Multiple Lines (if you want to merge the OSM track segments into a single track)
- OSMInfo
- QFieldSync
- QuickOSM
- QuickMapServices
Plugins can be installed via the plugin-manager.
Coordinate systems
The biggest problem of mapping is the translation of a three-dimensional reality into a two-dimensional representation. Earth is not just a simple sphere, but more shaped like a potato. To represent this potato shape a standard “ellipsoid” is created. For our purposes the WGS84 representation is best. This is the standard ellipsoid used by GNSS systems, central meridian is Greenwich. This is the standard latitude/longitude system we know.
To project this onto two dimensional maps different projections can be used, and to make things more confusing, the projections might also use different base ellipsoids. In Germany (Europe?) two systems are common: UTM (Universal Transverse Mercator) and Gauß-Krüger.
UTM is the projection chosen for modern public geographic data, all maps from public geodetic services are to be created in UTM with the WGS84 ellipsoid as base. UTM splits the world into 6° wide zones, with the reference meridian running in the middle of this zone. The zones are numbered from west to east. In addition, the UTM Zones are also split north/south into sub-zones which use letters for reference. Germany is mostly covered by two zones, 32U in the west and 33U east (the border between these two zones roughly passes through Berlin, so parts of Thüringen, Sachsen-Anhalt and Mecklenburg are also 32U).
Gauß-Krüger is an older projection, where the globe is split into 3° wide strips running parallel to the central meridian of each strip. Older german maps (before 2010) most probably use this projection. Outside germany this system was used in Netherlands, Sweden and South-Africa, in other countries other projections might be more common. Due to some differences in the projection, the maps in UTM projection and in Gauß-Krüger Projection deviate from each other at the edges of the meridian strips. On the central meridian they are identical. This is important when you import older large-scale maps into your QGIS data, you need to assign the correct projection to the maps and reproject if you want to overlay them. For maps covering small areas the errors are relatively small and constant, the georeferencing process might hide the error sufficiently well.
For projects in germany, chose WGS84 as base elipsoid and UTM Zone 32N (EPSG:25832) or 33N (EPSG:25833) for your Coordinate Reference.
QGIS concepts
Basemap
To have some official reference when you are mapping, it is useful to have a basemap. This can be an external map source, like OpenStreetMap, or it can be satellite data from Google or Bing. You are not limited to a single base map, you can add as many as you like. These basemaps usually are raster-data, meaning they are pixel images - which you can see if you zoom in far enough. OpenStreetMap, Bing, Google etc. are providing tiles, which are sections for specific locations in a specific zoom scale. These are loaded on demand. So depending on your internet connection, this can be slow, and the more you load at the same time, the slower it gets. Basemaps can be added with the XYZ Tiles from the browser on the left of the QGIS window.
Layers
QGIS administrates data in layers. These layers only can contain data of one specific type (list not complete)
- Points: single points with many attributes
- Lines: layers consisting of many points, with attributes for the line
- Polygon: layers consiting of closed line shapes, with attributes for polygons
- Multi-Points, Multi-Lines, Multi-Polygons, …
- Raster Data / Map tiles: georeferenced pixel images
These layers are saved into individual files. QGIS supports many filetypes, I use Geoppackages, as they are also the base for the Qfield App. Shapefiles are also commonly used.
Maps/Atlas
Working with QGIS you usually analyse your data in the main map window. While the main power of QGIS is the programming interface to the database, for heritage railway use usually the map display is more than sufficient.
As you want to output the data, you will need to create a map template and print the map. QGIS also allows the creation of an Atlas, a collection of maps, which are using the same style. It is possible to select the views for the atlas automatically, e.g along the railway line with an orientation which follows the line. More on that in the part “exporting your maps”.