QGIS has georeferencing capabilities that allows an image of a historical map to become a raster layer by assigning points on the map geographic coordinates. This post experiments with said capabilities based on the tutorial from the Programming Historian. That tutorial was based on an earlier version of QGIS, and so there were additional experiments in trying to do the lesson with the current version of the program. 

The first item in the instructions was to install the GDAL Georeferencing plugin, but after some searching realized this was no longer a separate plugin, but a standard built in tool. The use of the tool was also a little different than described. 

The actual first steps involved setting up a new project, defining the CRS, and adding two vector layers, one being the coastline vector and the other displaying the lots of Prince Edward Island. From this point, I selected the Georeferencer found under the Raster menu.

This opened a separate window and a dialogue box. Again, the CRS had to be defined and the image of the historical map added.

Next was the adding of points and getting them to correspond to points on the map just started with the coastline and lot boundaries. Selecting the add point tool, you click on an easily definable spot on the historical map, along the coastline worked best. Once clicking such a spot, a dialogue box opened, and the key here is to select the option in the bottom left corner to enter coordinates from map canvas. Selecting this takes you to the main map so you can click the same spot on the map, giving the geographic position of the one map to the other. 

This process was then repeated several times, adding sufficient data for the computer to be able to chart the rest of the historical map based on these given points. 

coordinates set and ready to georeference

Then the georeferencing settings had to be set so the new raster could be named and given a file location, again do this by clicking the ellipsis instead of simply entering a name in the output raster field. Selecting “load in QGIS when done” automatically adds this raster layer to the map in the main window.

Finally, click the triangle play button to run the georeferencing and watch the progress bar progress.

After that, the new raster is added to the map, and as seen, the historical map raster lines up very closely with the coastline and lot vectors already there.

final map, with new raster and vector layers correctly aligned.

In this post, I create some data visualizations in the form of maps using Tableau. The data set being used concerns rural areas and small towns in America and was found on data.gov. The research questions I explored using this data and Tableau’s map features concern whether or not rural and small towns across America largely share certain characteristics in communities and demographics, follow certain patterns, or are more randomized. The results of course show that this depends on the characteristic being questioned.

Opening the dataset in Tableau, I first chose the tables I wanted to work with. Creating the map only required dragging one of the components on the left that are geographic in nature (as denoted with the globe symbol) onto the detail button of the marks card. For this project I used the county data. At this point the map doesn’t tell us much useful information, only counties that have small towns, which includes most counties in the U.S. 

adding counties to the detail marks card to create a map visualization.
counties with rural and small town communities.

To make the map show us meaningful data, I added various cross reference to compare. These include showing comparing the numbers of education levels in these rural/small town counties. These bubble maps were formed by dragging the relevant data tables from the lefthand menu onto the map. 

map showing low education areas, these being most prevalent in southern states.

The resulting maps show a great disparity between northern and southern states when it comes to areas being determined to be low education. 

Other components show other patterns, such as this one showing which counties had the highest number of rural areas deemed to be farm dependent – predictably those in the farm belt. And another shows the more evenly distributed recreation dependent rural areas.

map showing farming dependent areas, clustered mostly in a vertical strip from the Dakotas down through Texas.
map showing recreationally dependent areas distributed across the U.S.

To play further with these maps and Tableau’s features, I changed the background map style by going to the map menu, and under background maps, picking the outdoors setting. 

changing the background map

Also, instead of relying on often deceptive bubble maps, I also explored some demographic features of these rural areas by dragging the relevant data tables straight onto the map. This resulted in providing the numbers of foreign born people living in rural areas and small towns in each county, visible when you mouse over the particular county you are curious about and displays all counties with the same size dot. 

numbers of foreign born people in Kalamazoo county, by continent or origin.

Earlier, as covered in this post, I discovered how to work with the QGIS program to build and edit maps. However, knowing how to change fonts and colors isn’t worth much without knowing how to create files that contain the map layers such as rivers or roads that had been pre-made for that earlier lesson. This post demonstrates how these shapefiles are created, again using a tutorial from the programming historian.

This project starts where the last QGIS one left off, with the map of Prince Edward Island. Because the new map going to be created looks at some differences over time, the first thing was inserting another historical map as another raster layer, this was done just as before. The new part is in creating three new vector layers, each of a different type. 

The basic steps for each are the same: 

1. In the menu bar, go to layer > Create Layer > New Shapefile Layer

2. In resulting “New Shapefile Layer” window: 

a. instead of simply typing in a file name in the box so labelled, click the ellipsis button next to it to not only name the new shapefile, but tell the computer where to save it.

b. set the CRS to match that of the layers you already have.

c. select the “geometry type” (dependent on the type of data that layer is to contain – points for things like towns, lines for roads or rivers, and polygons for things like regions or lakes.)

setting geometry type

d. add attribute fields – the type of and label of information you want linked to each point, line, polygon, etc. 

3. toggle editing and add points, lines, etc., finishing each with a right click which opens a box to add information to the attributes mentioned above in 2.d.

The first shapefile we create is the “points” type and will pinpoint cities and settlements, some of which no longer exist. The attributes here were settlement name, year (established), and end year (for those settlements no longer existing, when they ceased to exist). By default, new attributes are “text” unless otherwise specified, so for year and end year, whole number was selected as shown. 

Then, toggling editing on and selecting add point, one merely clicks where a settlement is/was, aided by the historical map rasters already in place, and fills in the name and year(s) attribute information in the box that pops up.

toggling editing

The second shapefile is to show historical roads and thus uses “line” geometry type. Here the attributes include name of road and year, again changing year to whole number input. 

setting type to whole number when adding attribute fields.

After turning on editing, and selecting add line, one places dots along where a road is, tracing roads from the historical map raster, right clicking at the end, which cues the attribute box to appear wherein name and year can be entered.

The third shapefile is to show the lots or districts the island is organized into, allowing us to use the polygon geometry type. Attributes are lot name and year. For rectangular lots, adding an item to the shapefile only requires clicking each of the four corners of the lot after toggling editing and selecting add polygon. 

Non rectangular areas are captured using “snapping” which is only a little more involved. First, I had to find the snapping toolbar, click the magnet to enable snapping, and go into the snapping options.

To be as accurate as possible, this snapping was done with reference to the modern coastline layer, changing the settings as described in the lesson. After closing the settings window, the new polygon is added much as the last one, only using more clicks to trace around the coastline.

showing the vertices of lot 38

Again, ending with a right click opens the attribute box and the polygon with its information becomes part of the shapefile. All the shapefiles created are saved wherever specified in step 2.a. for future use.

This post goes over another lesson from the Programming Historian, this one covering the uses of GoogleMaps and GoogleEarth. 

The first part uses the My Maps feature of Google Maps. Creating a new map was very intuitive. After titling the map, I imported the sample data concerning various fat exports to Britain in the mid-1890s. I then had to tell Google which columns of the uploaded spreadsheet correspond to places and which to information to be linked to those places. 

On the map produced, all places had the same default marker, and this was changed by going from uniform style to “Style by data column: Commodity.” This option gave each type of commodity its own color, with the ability to customize the colors and icons further. 

Next, I added a new layer by clicking new layer and changed the base map to satellite by selecting that option at the bottom of the editing panel. 

Then to practice putting place markers, in, I used the place marker tool to place some markers. Similarly, I used the tool next to this to draw some polygons around a couple of lakes and to highlight a road that runs between them. All of these markers, lines, and polygons were added to the new “Layer 2” as seen in the side panel.

The second part of the lesson uses Google Earth. After downloading and exploring how it works, the first steps of the lesson were to look at the Rumsey Historical maps by selecting them to appear in the layers pane. This brought up icons where there were historical maps ready to be overlaid. For an example, this 1815 map of Quebec City and the surroundings. 

The next part involved importing a saved map, and for this I used the map that I had just been working on as the example St. Lawrence Seaway map wasn’t currently compatible. This was as simple as opening the saved KMZ file. 

Next was drawing a polygon of Lake St. Clair, which worked much as in the Google Maps.

The most interesting part was to overlay a historical map onto the satellite images. For this I found an 1886 map of Duluth, MN. To input it, I selected the overlay button and browsed to find the right JPEG image. Then came adjusting of the map to align with the satellite imagery. 

In this post, I am working with QGIS, following along the tutorial from the Programming Historian to create and edit a map of Prince Edward Island.

Upon opening a new project, the first task was to set the Coordinate Reference System (CRS) to the specifics of Prince Edward Island. This was done in the CRS tab in Project Properties. 

Project Properties window for the selecting of a Coordinate Reference System

Next was to input the coastlines from a shapefile having that information by adding it as a vector layer as shown below. By default, QGIS gives this a background fill, which was removed double clicking the coastline entry in the layers pane, thereby opening the layer properties window where the symbology involving such aspects of appearance as fills and outlines can be customized. The background was removed by changing the stroke color of the simple fill to “No Brush.”

Prince Edward Island’s hydro-network was entered as the next vector layer, and the lines changed to be blue befitting waterways.

Then I added the shapefile showing the landuse of Prince Edward Isalnd, e.g. where forests, wetlands, developed areas, etc. are, according to the 1935 inventory of the region on which the shapefile is based. The editing of symbology was more complicated here, so that the different categories would be distinguished in shades of green. From the symbology tab of the layer properties, I first had to select categorized instead of the default “single symbol,” then set the value to be categorized to “landuse,” and select the color ramp to the gradient of greens. 

using categorized option to configure the land-use vector layer

In order to remove the outlines between land sections, I selected “configure symbol for the symbol menu, and changed the stroke style of the simple fill to “No Pen.” 

map showing coastlines, hydro-network, and land-use of PEI.

Highways were added in the same way, again using the “categorized” option to make primary and secondary roads appear differently. 

Placenames followed, and were edited under the “Labels” tab of the Layer Properties window. A buffer was added so the names of cities would be legible against other things in the map. 

editing window for place name labels

Finally a raster layer was added, in much the same was vector layers were. This map image was then moved behind the other layers and the coastlines were bolded to finish the lesson.

final map of PEI made in QGIS
Skip to content