Welcome back to this month’s edition of Mapping Class. The Mapping Class tutorial series curates video tutorials and workflows created by experienced cartographers and Avenza software users. With us today is Steve Spindler, a MAPublisher expert, and professional cartographer. Steve is back with a quick demo showing how he uses MAPublisher path utility tools and a custom Adobe script produced by Nathaniel Kelso to create unique mile marker symbols. The Avenza team has produced video notes adapted from the original article found on Steve’s personal blog.
***
Create Distance Marker Symbols in MAPublisher using Scripts by Steve Spindler (Notes adapted from the original)
MAPublisher used within Adobe Illustrator enables us to create mile markers or other points along a line. I’m using this tool while working on the Genesee Valley Greenway map, and this video walks through the process.
Not shown in the video is how I set the direction of the line. Reversing the line direction is done using the MAPublisher Flip Lines tool. I just didn’t need to do this.
To set the mile marker preferences, we can use the Add Path Intervals in the Path Utilities tool.
This is pretty good, but if you want to customize the circle or square, it helps to convert the polygon objects into symbols.
Find and Replace Symbols Script
The script is called “Find and Replace Graphics” and can be found on Nathaniel Kelso’s website here. Save the script into the appropriate Adobe Illustrator Scripts folder. If you prefer, you can save the script elsewhere and navigate to the script manually using “File>Script>Other Script…”
Note: Save the script with the “.js” extension
To use it, I select all of the current objects that I want to replace and make sure they are on the same layer. I lock other layers. Then I add place a symbol on the same layer (ensure the symbol you want to use is the top-most object in the layer).
With the objects selected, run the script here.
All of the selected objects will be changed to the top-most object, which I set to be a symbol.
Select only the polygons, not the text. Otherwise, you will get this error.
***
About the Author
Steve Spindler has been designing compelling cartographic pieces for over 20 years. His company, Steve Spindler Cartography, has developed map products for governments, city planning organizations, and non-profits from across the country. He also manages wikimapping.com, a public engagement tool that allows city planners to connect and receive input from their community using maps. To learn more about Steve Spindler’s spectacular cartography work, visit his personal website. To view Steve’s other mapping demonstrations, visit cartographyclass.com
Welcome back to Mapping Class! The Mapping Class tutorial series curates demonstrations and workflows created by professional cartographers and expert Avenza software users. Today Tom Patterson is sharing with us part two of his demonstration of editing Sentinel-2 Imagery Data using Geographic Imager and Adobe Photoshop. Continued from Part One, Tom shows how to take his newly crafted true-color image to make water regions really pop! He will show you how you can use the mosaic tool in Geographic Imager to work with elevation data to create layer masks that make adjusting water areas easy.
If you missed last month’s edition of Mapping Class, check out Part One of Tom’s demonstration.
We have also compiled supplementary video notes below.
***
Work with Sentinel-2 Imagery in Geographic Imager: Part Two by Tom Patterson (Video notes adapted from original)
The vegetation brightening technique from part one also influences the color of water bodies. In part two, we will shift water bodies to a more attractive blue and diminish reflections, wind riffles, and sediment plumes. The technique involves adding a flat blue layer with an accompanying water layer mask in Photoshop.
Create a Water-Layer Mask
We will create the water layer mask from band 8. It contains data from the near-infrared section of the spectrum that clearly delineates water and land areas. Applying a steep curves adjustment to band 8 will compress the tonal range, which when inverted, results in a high-contrast land-water mask.
The trick is to adjust the curve in such a way so that it minimizes blemishes in the water and shadows on the land. Unfortunately, with this dataset, mountain cast shadows can still be seen as noise, even with the strong curve adjustment. Obviously, this would create challenges if we were to use this as our water mask, so we need to do a few more steps to get rid of that “noise”.
Clean-up the Water Layer Mask
I’ve grabbed a 30m SRTM DEM for this area. I can use this as a mask to get rid of those pesky mountain shadows. The tricky part is that we are now working with mixed projections and different datasets.
I can use the nifty Mosaic tool in Geographic Imager to bring these two datasets together. The really important part is to specify the “crop to destination extents” option. Doing this will not only apply an on-the-fly projection transformation but also crop the large DEM dataset automatically down to match my water mask layer. Also, be sure to select the “merge source document layers” option – this really helps clean up the layer management, while still keeping the important stuff separate.
To get rid of those mountain shadows, we apply another linear curves adjustment. Similar to before, the idea is to compress that tonal range until only the regions at or near sea level are visible (most of the water in our image is at sea level).
Select the layer, apply the “Screen” blending mode, and then “flatten” the image to create the final water mask layer (now with removed mountain shadows!).
Apply the Water-mask layer
When the water mask is ready, copy it to the computer clipboard. Next, go back to the true color image and create a new topmost layer and add a layer mask. Then paste this into the layer mask (be sure to invert it!). You can then fill the water layer with whichever flat blue that you like. Finally, partially decrease the opacity of the flat blue layer to reveal any sediments or reflections that may exist in the satellite images. You might need to do a bit of manual touch-up with the brush tool on your mask layer to completely remove all mountain shadows.
Mosaic Multiple Images
I did almost the exact same technique on another image directly south of this one, and I’ve decided I would like to mosaic both of these images together into a single composite. Again, I use the mosaic tool (this time uncheck the “crop” option), and voila! Both images are mosaiced together in less than a second!
Finishing Touches
A few more touch-ups with the gradient tool to blend the images at their border, and some final adjustment layers to boost the saturation a bit and we are basically done.
The very last thing that I do is to apply sharpening, which is irreversible. You will need to experiment to determine the amount that is best. As a starting point, try these settings (Filter/Sharpen/Unsharp Mask). Amount = 100%, Radius = 0.5 pixels, Threshold = 0 levels
That’s it! We took some really nice multispectral Sentinel-2 Imagery, some great tools in Geographic Imager, and used some of the nice native Photoshop tools to create a really vibrant, true-color image that’s ready to be draped over some 3D relief or used to create another nice map!
A note on Exporting Images…
Before exporting the final image as a GeoTIFF using Geographic Imager, go to Image/Mode and reduce the bit depth from 16 to 8 bits per channel, and then flatten the image. This will significantly reduce the file size.
***
About the Author
Tom Patterson worked as a cartographer at the U.S. National Park Service, Harpers Ferry Center until retiring in 2018. He has an M.A. in Geography from the University of Hawai‘i at Mānoa. Presenting terrain on maps is Tom’s passion. He publishes his work on shadedrelief.com and is the co-developer of the Natural Earth dataset and the Equal Earth projection. Tom has served as President and Executive Director of the NACIS. He is now Vice-Chair of the International Cartographic Association, Commission on Mountain Cartography.
Welcome to the latest edition of Mapping Class! The Mapping Class tutorial series curates demonstrations and workflows created by professional cartographers and expert Avenza software users. In this month’s edition, we welcome Tom Patterson, a map-maker extraordinaire and a true household name in the cartography world. Today Tom is sharing with us a demonstration showing how he works with Sentinel-2 Imagery Data using Geographic Imager and Adobe Photoshop. Tom uses a new dataset that that represents a “pretty difficult” image to process and offers an excellent look at how to create beautiful natural colour images from satellite data.
Part One of this exciting walkthrough covers the techniques Tom uses for accessing and importing satellite imagery data, as well as his approach to colour correction using some of the powerful built-in image editing tools in Adobe Photoshop. Tom has produced video notes below to help you follow along! Look out for Part Two, coming in next months edition of Mapping Class!
***
Work with Sentinel-2 Imagery in Geographic Imager: Part One by Tom Patterson (Video notes adapted from original)
This tutorial explains how to process Sentinel-2 satellite data, released by the European Space Agency for free, into natural colour images. Beautification is the goal—nature often can use a little help when using satellite images for maps and graphical presentations.
To do this tutorial you will need Adobe Photoshop and Avenza Geographic Imager. Trial versions for geographic imager can be found here. For this tutorial, you should also have intermediate Photoshop skills, a good internet connection, and a computer with plenty of RAM.
Getting the data
The US Geological Survey distributes Sentinel-2 data on the EarthExplorer data portal. You can also download Sentinel-2 on the Copernicus Open Access Hub, although I find EarthExplorer easier to use.
1) Downloading data from EarthExplorer requires that you first sign in as a registered user.
2) After you sign in, use the “Search Criteria” tab in the upper left to specify a point of interest. You can also draw a polygon on the map to specify a larger search area.
3) Click the “Data Sets” tab next. From the long list of data types, select “Sentinel-2.”
4) The EarthExplorer portal offers useful tools for narrowing your search. For example, you can filter by acquisition date and cloud cover. Sentinel-2 image extents are viewable as transparent map overlays.
5) Click the “Results” tab to peruse the available images. Then click the image thumbnails to see larger image previews in false color. Scrolling down from the image previews reveals additional metadata
To download a scene from the search results list, click the “Download Options” icon. You will then see these two download options:
● L1C Tile in JPEG2000 format (XX MB)
● Full Resolution Browse in GeoTIFF format (XX MB)
Download both.
7) The Full Resolution Browse in GeoTIFF format is a false-color image (bands 11, 8A, and 4) at 20-meter resolution.
8) Decompress the L1C Tile in JPEG2000 format archive. It contains the raw Sentinel-2 bands and a true-color image. You will need to drill through multiple folders to get to these data
Importing the data
Because Photoshop does not natively import JPEG2000 files, you will need to use a Geographic Imager to import the Sentinel-2 data. The advantage of Geographic Imager over other plugins is that it preserves georeferencing and allows you to export manipulated Sentinel-2 images as GeoTIFFs.
1) In the Photoshop drop menu, go to File/Import/GI: Advanced Import…
2) Select one or more Sentinel-2 bands to import (in this case, we want Bands 4, 3, and 2 which correspond to our Red, Green, and Blue bands) and click OK. Importing could take a minute or two to complete. Each Sentinel-2 band will open as a separate Photoshop file. That’s it.
Colour Correction
The premade True Color Images are convenient to obtain, and you can easily adjust them to create acceptable results. However, they have an Achilles heel: snow- and ice-covered landscapes. Automated processing removes the very lightest tones, rendering them as empty white (below, left). In order to depict subtle details in snowy terrain, one must build the satellite image from scratch using the raw data in bands 4, 3, and 2 (below, right).
1) Use Geographic Imager to open bands 4, 3, and 2 (File/Import/GI: Advanced Import…). The import will take a couple of minutes to complete, and the three bands will open as separate Photoshop files.
2) With one of the Photoshop files active, go to the flyout menu in the upper right corner of the Channels window. Select Merge Channels…
3) In the Merge Channels window, change the mode to RGB Color and specify 3 channels.
4) Another window will pop up. Make sure that band 4 is the red channel, band 3 is the green channel, and band 2 is the blue channel. Then click okay.
5) Photoshop will then ask whether you want to save each of the three bands. Don’t save them. You will then see the merged 16-bit RGB image, which is mostly gray
Using Curves
Now the fun begins. Compared to Levels adjustments that are linear, Curves adjustments are non-linear, giving you more control over discrete portions of the tonal range in an image. They are a little tricky to use at first, but the precise results that you can achieve with this command make learning it very worthwhile.
1) Apply a Curves adjustment layer and adjust the tonal range of the image taking care to leave some value in the snow patches. I often apply two or more Curves adjustment layers, one on top of the other, to fine-tune the tonal balance. With 16-bit images, you can stretch the tonal range without worrying about banding artifacts.
2) Save your applied curves as adjustment layers so you can save and re-use them for later. This is especially important when you start mosaicing imagery data (coming in part two!) and need to ensure curves are applied consistently across multiple images.
Below is the curve that I used to adjust the image. The histogram shows the distribution of light and dark values. Moving the lower-left end of the curve to the right lightened dark trees. Moving the top-right end down added a slight amount of tone to the white snow. Both of these moves decreased overall contrast.
Touch-up with the False Colour Image
We want to add a bit more eye-catching vibrance to our image. We can do that by utilizing the included false colour imagery and using the colour properties and blending tools to really make the mountainous terrain pop.
1) Since we need the false colour imagery to match the resolution of our RGB image, we need to upscale it. This can be done using the image sizing properties and resampling using the “Preserve Details” setting.
2) Overlay this upscaled false colour image over top of the RGB layer. You can then adjust the blending modes to create a nice vibrant image. In this case, I use the “Soft Light” blending mode, which is great for making the alpine terrain really stand out.
3) Create a selective colour adjustment layer to touch out individual colour tones in the image. For example, I try to remove much of the yellow tones in the image, as yellow tones are atypical for the “cold” alpine-like terrain we find in this image.
Coming up in Part Two:
The land areas in this image now stand out quite well. They look quite a bit more vibrant than the raw data and offer a bit better tonality than what we find in the automatically generated true-colour image included in the download. What we can do next is work on making the water areas stand out as well. I’ll show you how you can use the mosaic tool in Geographic Imager to work with elevation data to create layer masks that make adjusting water areas easy.
***
About the Author
Tom Patterson worked as a cartographer at the U.S. National Park Service, Harpers Ferry Center until retiring in 2018. He has an M.A. in Geography from the University of Hawai‘i at Mānoa. Presenting terrain on maps is Tom’s passion. He publishes his work on ShadedRelief.com and is the co-developer of the Natural Earth dataset and the Equal Earth projection. Tom has served as President and Executive Director of the NACIS. He is now Vice-Chair of the International Cartographic Association, Commission on Mountain Cartography.
Welcome back to another edition of Mapping Class! The Mapping Class tutorial series curates demonstrations and workflows created by professional cartographers and expert Avenza software users. Today we have Steve Spindler, a longtime MAPublisher user, and expert cartographer. Steve has put together a 15-minute masterclass on creating maps from start to finish using templates and stylesheets. This video is jam-packed with useful tips and tricks that show how Steve uses templates, stylesheets, and a host of MAPublisher tools to design a beautiful map in minutes.
Steve has produced a video to show the complete, un-cut, map-making process. The Avenza team has produced video notes (below) to help you follow along.
***
Efficient Map-making using Templates and Stylesheets by Steve Spindler (video notes by the Avenza team)
Today, Steve is doing something a little different. Instead of focusing on a specific tool or technique, he has put together a complete 15-minute masterclass showing how he creates a map from start to finish. In this uncut demonstration, Steve discusses his tips for importing data, using MAP views, applying stylesheets, and even labelling. Steve shows how using templates and preconfigured MAP themes can make map creation a breeze.
Using a Template
In this demonstration, Steve will be creating a congressional district map showing the municipalities of Pennsylvania District 17. Steve discusses how using a template to create your map can significantly improve the speed of map creation. Templates can be used to configure standardized design elements that can be recycled across several different map projects. Templates are especially useful in situations where different maps form part of a series with shared design components and colour schemes.
For this tutorial, Steve uses a template that includes some basic stylistic elements he typically includes in all his congressional district maps. The template comes preloaded with custom borders, Titles, subtitles, an inset map, and a scale bar. His template is already configured with custom fonts and colours that will give some uniformity across his different map projects.
Steve has also set up swatch groups for his template. This ensures each map created with the template uses the same colour groups. Setting up swatches in the template also makes it easy to swap out or change the colour of different map elements. As an example, Steve uses the drag and drop functionality of the swatch panel to automatically adjust the “core colours” of his map template (text, border, and scale bar colours) from brown to green.
Steve’s template comes preloaded with an inset map containing all the congressional district boundaries for Pennsylvania. Using the drag-and-drop functionality of MAP Views, he can place a “District 17” data layer into a new MAP View that will contain the main body of his map project. Using the MAP View editor, Steve can assign a custom scale and choose an appropriate projection. This will ensure any new data layers he brings into the MAP view will be correctly aligned and accurately projected.
Import and Prepare the Map Data
With his template configured, Steve now brings in some new data. He wants to access municipal boundary polygon data found on a PostGIS database stored locally. You can specify the specific data table within the database he wishes to add using the Import tool. More importantly, shows how he uses spatial filtering options to specify the region of interest. The spatial filter means that only the data relevant to the map extent is loaded in (very useful when using large datasets).
Using the Crop to Shape tool, Steve cleans up the imported data layer by removing any polygons that fall outside his district boundaries. Next, he uses the Simplify tool to remove extraneous vertices, with that his data is ready for stylization!
Apply Styles with MAP Themes
MAP themes are one of the most powerful tools in the MAPublisher toolset. MAP Themes allow you to configure rules-based stylesheets that work with attribute information stored in map data layers. Using pre-coded attribute values in his municipal boundary layer, Steve can assign colour fills to each municipality. Using colour in this way is a bit more eye-catching than using generic boundary lines, and makes it easy to see the shapes of each municipality.
MAP Themes can not only set the stroke and fill for each polygon, but also apply graphic style effects such as “inner glow” to give each shape a more defined appearance. Since MAP Themes are entirely rules-based, it’s easy to modify and apply styles across the entire map without needing to adjust appearance settings for each vector layer individually.
Labels and Details
With his MAP Themes applied, Steve needs to finalize the scale bar that appears in the bottom right corner of the map. Since the template he uses comes pre-configured with a MAPublisher cale bar, it’s only a matter of dragging and dropping the scale bar layer into the appropriate MAP View. If you recall from earlier, Steve set up this new map-view with its own map scale and projection, meaning the scale bar will automatically be adjusted to fit the map data once it is placed in the new MAP view, creating an accurate and informative scale for viewers.
Lastly, Steve uses the MAPublisher LabelPro add-on to apply labels to each of the municipalities in his map. Similar to MAP Themes, the LabelPro tool allows Steve to configure rules-based label layers that manage label placement and style. The labelling engine ensures that labels are placed to avoid collisions, eliminate label overlap, and reduce label clutter. Finishing the map with a few minor touch-ups and voila!, Steve has finished his Pennsylvania District 17 Map in less than 15 minutes!
***
About the Author
Steve Spindler has been designing compelling cartographic pieces for over 20 years. His company, Steve Spindler Cartography, has developed map products for governments, city planning organizations, and non-profits from across the country. He also manages wikimapping.com, a public engagement tool that allows city planners to connect and receive input from their community using maps. To learn more about Steve Spindler’s spectacular cartography work, visit his personal website. To view Steve’s other mapping demonstrations, visit cartographyclass.com
Welcome back to this month’s edition of Mapping Class. The Mapping Class tutorial series curates video tutorials and workflows created by experienced cartographers and Avenza software users. Joining us once again is Steve Spindler, a longtime MAPublisher user, and expert cartographer. Steve is here to show you a quick tip for using the attribute expression builder within MAPublisher to quickly perform batch edits of labels.
Steve has produced a short video to demonstrate how he uses the expression builder to quickly edit street names. The Avenza team has produced video notes (below) to help you follow along.
***
Label efficiently using Attribute Expression Builder by Steve Spindler (video notes by the Avenza team)
With MAPublisher, labeling your maps is a breeze. With powerful tools such as LabelPro, labeling is only a matter of selecting the data you want to label, and configuring a robust set of rules that control how each label is placed and styled. But before you can start labeling, you must have high-quality, accurate attribute information for your map data. Since labels are typically generated by displaying text values contained in an attribute column, it is important that attributes are not only accurate but are also formatted in a way that is optimized for display on a map. In many cases, cartographers need to spend time reformatting or editing attribute information before they can generate labels, a process that can become quite time-consuming. Nowhere else is this problem more common than when dealing with street names and road network data.
When labeling streets, cartographers often spend time correcting, or even generating brand new attribute information that can be used to create more concise, effective street labels. This typically involves changing street prefixes and suffixes to a condensed short form (i.e “North Cherry Boulevard” becomes “N Cherry Blvd”). For smaller projects, this can be done by manually editing the individual attribute values directly within the MAP Attribute panel. For large projects, especially those dealing with hundreds or even thousands of map features, manual editing would be very time-consuming.
For a more efficient approach, Steve shows how you can use the Expression Builder to easily modify large selections of attribute values. The first step is to open the MAP attribute table, which displays all the attribute information contained within a specific map layer. Steve identifies the attribute column that contains the text street names and will use this to build out a new attribute column to create his labels.
Next, Steve opens the Edit Schema window of the attribute table. Here, you can access column information such as the data type, default value, field visibility, and most importantly; the expression builder.
The expression builder may seem intimidating at first, but with a little bit of effort, it can be an incredibly powerful tool for calculating attribute values and performing batch-edits on your data. The tool uses built-in operators and items in the objects list (attribute names and values, constants, functions) to calculate custom attribute information based on a specified set of expressions. In this case, Steve first creates an expression set that modifies the suffix values in the Street name field (i.e “Boulevard”) and substitutes them with the appropriate short form (“Blvd”). The expression is used to populate a new attribute column called “Road_suffix”. The end result means attribute values such as “East Utica Street” will be passed to a new attribute value of “East Utica St”.
IF_CASE(name, ENDSWITH(name, “ Street“),SUBSTITUTE( name , “Street”, “St”), ENDSWITH(name, “ Drive“),SUBSTITUTE( name , “Drive”, “Dr”), ENDSWITH(name, “ Road“),SUBSTITUTE( name , “Road”, “Rd”), ENDSWITH(name, “ Court“),SUBSTITUTE( name , “Court”, “Ct”), ENDSWITH(name, “ Way“),SUBSTITUTE( name , “Way”, “Wy”), ENDSWITH(name, “ Lane“),SUBSTITUTE( name , “Lane”, “La”), ENDSWITH(name, “ Route“),SUBSTITUTE( name , “Route”, “Rt”), ENDSWITH(name, “ Boulevard“),SUBSTITUTE( name , “Boulevard”, “Blvd”), ENDSWITH(name, “ Turnpike“),SUBSTITUTE( name , “Turnpike”, “Tpke”), ENDSWITH(name, “ Avenue“),SUBSTITUTE( name , “Avenue”, “Ave”), ENDSWITH(name, “ Place“),SUBSTITUTE( name , “Place”, “Pl”), ENDSWITH(name, “ Circle“),SUBSTITUTE( name , “Court”, “Cr”), ENDSWITH(name, “ Highway“),SUBSTITUTE( name , “Highway”, “Hwy”), ENDSWITH(name, “ Expressway“),SUBSTITUTE( name , “Expressway”, “Exp”) )
Next, Steve creates a second set of expressions that will further adjust his Road_suffix attribute column to substitute any street name prefixes (North, East, South, West) with their corresponding short-form (N, E, S, W). This second expression (see code block below) is used to populate another new attribute column called “Label”, which will ultimately be used to generate the final formatted label layer.
Note that these expressions are specific to the dataset and map area Steve is using for his project. When using expression builders for your own maps, pay careful attention to the attribute values specific to your area of interest. The best part about expression sets is that they are highly flexible, meaning you can build upon and modify existing expressions, save them to your library, and even use them across multiple different mapping projects!
With his newly created “Label” attribute column, it’s simply a matter of configuring the LabelPro tool to display these formatted label values. With a bit of configuration, the end result is a clean, uncluttered, collision-free label layer. The labels now use all the correct prefixes and suffixes Steve required. By saving his expression sets to his library folder, Steve can now quickly and easily repeat the exact same batch-editing process for new maps with only a few clicks!
***
About the Author
Steve Spindler has been designing compelling cartographic pieces for over 20 years. His company, Steve Spindler Cartography, has developed map products for governments, city planning organizations, and non-profits from across the country. He also manages wikimapping.com, a public engagement tool that allows city planners to connect and receive input from their community using maps. To learn more about Steve Spindler’s spectacular cartography work, visit his personal website. To view Steve’s other mapping demonstrations, visit cartographyclass.com
Welcome back to another exciting edition of Mapping Class, a video-blog series where we curate tutorials and workflows created by expert cartographers and Avenza power users from around the world. Today we release Part Two of our Georeferencing Techniques tutorial with Hans van der Maarel, owner of Red Geographics. In Part Two, Hans demonstrates some techniques he has developed for working with more challenging georeferencing tasks, including dealing with unknown projection information and working with scanned maps. If you missed Part One, in which Hans covers the basics of Georeferencing in MAPublisher, check it out here.
Hans has produced a jam-packed video walkthrough detailing his georeferencing process. The Avenza team has produced video notes (below) to help you follow along.
***
Georeferencing Techniques Part Two: Working with Scanned Maps by Hans van der Maarel (video notes by the Avenza team)
As we discussed in last month’s Mapping Class, georeferencing is the process of taking imagery or map data that lacks geographic location information and associating it with specific coordinates on Earth. Previously, Hans showed us how MAPublisher provides a few tools that make georeferencing simple vector map data a painless process (Check out part one here!). Best of all, using the built-in georeferencing tools, this can be done entirely within the Adobe Illustrator environment.
However, what can you do if you are working with historical maps or scanned images that lack spatial referencing or detailed projection information? This can present a challenge for many cartographers, as the projection information is necessary to create an effective cartographic product that will minimize distortion and maximize the spatial accuracy of the final result. To tackle this problem, Hans shares a series of tips and tricks that he uses for working with scanned historical maps. He uses a beautiful historical map of Northwest Africa to demonstrate his approach.
Right away, Hans identifies a few obstacles. First, he notices that the scan is not a perfect copy of the original map. Due to natural curves and bends in the physical paper version of the map, there is minor distortion in the digital image that arose when the map was scanned. This could create problems for georeferencing the image, as the “fitting” process can be susceptible to image distortions, even when a suitable projection is determined. Thus it is always a good idea to examine your scanned map prior to beginning the georeferencing process. Becoming aware of potential issues with the scanned map data can help inform decisions on the data’s suitability for a particular mapping task. Acknowledging that the distortion is relatively minor in this scanned map, Hans chooses to proceed with the georeferencing process.
Hans notices that the scanned map image does not provide any details on the original projection information. Instead, Hans must make an “educated guess” on which projection was being used. With a bit of research, he discovers another map from roughly the same era and displaying a similar region. Recognizing the similarities between this map, and his scanned map, Hans decides to implement a Lambert Zenithal (Azimuthal) Equal Area Projection.
Hans can begin his georeferencing process by first setting up a new MAP View with the Lambert Azimuthal Equal Area Projection, a conical projection used in many atlas-style maps. To help with the georeferencing process, Hans has used the Import tool to display a vector line layer of coastlines using Natural Earth Data. He can use this coastline data as a guide to help align his scanned map during the georeferencing process.
Before moving on, Hans brings up two important things one must consider when working with conical projections: the central meridian and the latitude of origin. When working with scanned maps that include graticule lines, a quick and easy way to help identify the central meridian is to look for the meridian line that closest approximates a straight line. Using the graticules on the scanned map, Hans can approximate a central meridian of about 11 Degrees. In the MAP View Editor, a user can open the projected Coordinate System Editor and modify the definition for the lambert azimuthal equal-area projection to have a central meridian that matches his estimation.
Placing the scanned map layer onto his newly modified MAP view, Hans can then begin the process of manually aligning the map image to match his projected coastline data. One of the easiest ways to support this process is to configure the MAP View editor panel to display layer thumbnails. With this configured, a user can begin manually adjusting the MAP layers until they are suitably aligned.
Hans reiterates that this process is not an exact science. He has made several assumptions on the projection parameters, and the overall accuracy of the original map. He indicates that a user should spend some time trying to get the best possible result, however it will be difficult to achieve a perfect match (especially given the distortions that can occur when a map is scanned from a physical copy). This process can take anywhere from minutes to hours, and requires a lot of manual adjustment, trial and error, and most importantly, patience! The result, however, is that the finalized scanned map layer is correctly projected and georeferenced into a MAP view. From here, adding data layers, annotations, labels, or tracing vector layers from the scanned map can all be completed in a spatially aware mapping environment.
Providing a second example using a slightly different approach, this time Hans uses a map of the Arctic Region. He indicates that although he has been provided with a map of the entire polar region, the client is only interested in the area surrounding the Bering Strait (between Russia and Alaska). As with the previous example, the first step is to identify the best projection to use. Hans correctly guesses that the map provided likely uses the Polar Azimuthal Equidistant Projection based on visual inspection. However, it should be noted that there is room for trial and error here, and users should not be afraid to explore the large coordinate system and projections library included with MAPublisher to try out and test different projections to help narrow down one that fits best.
The first thing Hans notices is that the scanned map image is rotated about -90 Degrees from what is displayed in his reference coastline data. Once again, by visiting the MAP View Editor, Hans can rotate his Map layers without breaking the spatial referencing information of his original map data. By doing this, Hans assures that his map layers are aligned on the same rotational angle, and can then begin to focus on scaling the layers.
Hans uses the MAP view editor panel to apply manual adjustments to the map layers. He notes that a cartographer should always consider the area of the map they are most interested in. For example, although his map covers the entire polar region, Hans indicates the final product will only display the regions surrounding the Bering Strait. Given this, the georeferencing process should be primarily concerned with accurate alignment in the Bering Strait area, while distortion in other areas is seen as acceptable. In the example below, you can see how Hans has achieved a suitable level of georeferencing accuracy in his primary area of interest, despite the non-important areas (i.e the Canadian Polar region, eastern Siberia, Greenland) having relatively low georeferencing accuracy.
With his newly georeferenced scanned map layers. A cartographer can now use the information contained within these scans to supplement a larger cartographic process. For example, Hans can now use the scanned maps to digitize boundaries, or geographic features that may not be present in modern digital datasets (for example, historical boundaries for different countries, or terrain features that are no longer present)
***
About the Author
Hans van der Maarel is the owner of Red Geographics, located in Zevenbergen, Netherlands. Red Geographics is a long-time partner of Avenza and Hans is a well-known power user of both MAPublisher and Geographic Imager. He uses the products for a wide range of cartographic projects for several international organizations and offers training courses and consultancy expertise aimed at developing workflows for clients. In addition to that, he is currently a board member of NACIS. To find out more about Red Geographics, and to see more work by Hans, visit redgeographics.com
Welcome back to another exciting edition of Mapping Class, a new video-blog series where we curate tutorials and workflows created by expert cartographers and Avenza power users from around the world. For this article, we are excited to introduce Hans van der Maarel, owner of Red Geographics, and expert cartographer. Joining us from Netherlands, Hans has put together a video tutorial showcasing tips and tricks for tackling Georeferencing in a variety of different mapping scenarios. In this first part, Hans goes over the basics of georeferencing in MAPublisher, using a neat city map of Zevenbergen. Tune in for Part Two, coming soon, which will reveal how Hans approaches more challenging georeferencing tasks, including dealing with unknown projection information and working with historical maps.
Hans has produced a short video walkthrough detailing part one of his georeferencing process. The Avenza team has produced video notes (below) to help you follow along.
***
Georeferencing Techniques Part One: The Basics by Hans van der Maarel (video notes by the Avenza team)
Georeferencing is the process of taking imagery or map data that lacks geographic location information and associating it with specific coordinates on Earth. Georeferencing is a very common, but sometimes challenging step that is necessary for producing accurate, meaningful cartographic products. By georeferencing map data, cartographers can ensure that the features on their maps are located correctly, and in a way that accurately represents the real world. Georeferencing also makes it easy to add and update maps with new data layers, as location information stored within the new map layers will be accurately overlaid in the correct position on older map projects. The process for georeferencing maps can be complicated, but Hans has outlined some easy-to-follow steps for quickly performing and validating simple georeferencing tasks with vector map data.
In general, effective georeferencing needs to include at minimum three known control points. In this example, Hans has included an additional fourth control point to provide additional accuracy.
When locating control points, it is a good idea to choose points that roughly approximate the four corners (quadrants) of your map area. Doing so can ensure the georeferencing result is accurate for the entire coverage of the map area and minimizes distortion/shearing effects as the map layers are matched to the final coordinate system. Cartographers should take time to ensure the chosen control points are as accurate as possible, as errors in control point placement will propagate across all locations in the map. Poor control point placement can lead to overall poor georeferencing accuracy.
Using the MAP Page location tool, place four control points at known, easily identifiable locations. Hans recommends placing control points at recognizable map features that can be easily seen on the reference imagery. For this example, Hans chose to use the corners and edges of major structures (i.e larger buildings/reservoirs) or the centers of well-known major road intersections. When using road features as reference control points, Hans recommends using the center of the feature rather than the edge. This can compensate for variation in road edge placement that can occur when the vector line layer does not completely match the true road/lane width in the imagery.
Next, open the Georeferencing tool and select the “Add World Locations” option. From here, use the built-in web map to calculate latitude/longitude coordinates for each of your known control points. Using the satellite imagery view can make this process easier, especially when dealing with physical features on the map (i.e building corners). Repeat this for each of the four control points.
The resulting table will show a list of set coordinates for each of these control points. From here, if you already know the projection the map data is already in, you may set this coordinate system at this stage. If you are unsure, the georeferencer tool will automatically provide a suggested list of coordinate systems that match the control points you have set. These “best” matches are provided based on measuring the error between your user set coordinates and the real-world locations on the web map. Ideally, you want the lowest combined error value. In general, the suggested coordinate systems at the top of the list are often the best choice.
Once you select the desired coordinate system, the tool will automatically create a new MAP View where you can house your newly georeferenced map data. You will notice that the MAP Page Locations you created earlier will be displayed alongside the newly georeference control points. This is a great way to help validate your georeferencing as you will be able to observe the accuracy (or inaccuracy) of your placed control points.
Finally, it is a good idea to use the Find Places tool to validate your georeferencing results. Try searching for identifiable landmarks or major features on your map (i.e. train stations). Simply search for a location using the Find Places tool, and compare this to the georeferenced locations on your map.
This concludes Part One of “Georeferencing Techniques with Hans van der Maarel“. Now that you have covered the basics of Georeferencing in MAPublisher, tune in for part two in the next edition of Mapping Class. There you will see how Hans tackles more complex georeferencing projects, including what to do when you have small-scale maps that come from scanned or printed images, or where projection or referencing information is unavailable. Hans will be using a beautiful historical map of northwest Africa to demonstrate this problem. Look for it in the Avenza Resources Blog next month.
***
About the Author
Hans van der Maarel is the owner of Red Geographics, located in Zevenbergen, Netherlands. Red Geographics is a long-time partner of Avenza and Hans is a well-known power user of both MAPublisher and Geographic Imager. He uses the products for a wide range of cartographic projects for several international organizations and offers training courses and consultancy expertise aimed at developing workflows for clients. In addition to that, he is currently a board member of NACIS. To find out more about Red Geographics, and to see more work by Hans, visit redgeographics.com
We are back with another exciting addition to our Mapping Class tutorial series. The Mapping Class tutorial series curates demonstrations and workflows created by cartographers and Avenza software users. For this article, we are welcoming back Steve Spindler, a longtime MAPublisher user, and expert cartographer. He has shared with us an excellent tutorial on creating a map from scratch using openly available geographic data from OpenStreetMap, and accessed through Overpass turbo. Steve shows how you can create query statements to filter and export the data, and demonstrates how you can import the data into MAPublisher before using a selection of cartographic styling tools to create a visually appealing map.
Steve has produced a short video walkthrough detailing his map-making process. The Avenza team has produced video notes (below) to help you follow along.
***
Importing OpenStreetMap data using Overpass Turbo by Steve Spindler (video notes by the Avenza team)
Finding and accessing good quality data is often the first challenge for any cartography project. OpenStreetMap (OSM) can be an excellent source of open vector data describing land cover features (roads, parks, rivers, buildings, trails, infrastructure, boundaries). Once collected, cartographers can use OSM data to create highly detailed maps using the MAPublisher plug-in for Adobe Illustrator. Steve will demonstrate his process of collecting raw data from OSM and using it to craft a beautiful map of the Niagara Falls Area. The following video notes summarize Steve’s approach.
First, you will need to extract some data from the OSM database. Since OSM is a massive repository of geographic data, you’ll need a way to filter through and extract only the data needed for your specific map project. Overpass turbo is a web-based data mining tool that can make querying and exporting OpenStreetMap datasets easy. The tool allows users to apply query statements that filter the OSM database based on attribute and location information. Using the Overpass turbo “Wizard”, a user can enter simple queries (i.e. “water”) and automatically filter and select all features that match the query statement, making it easy to export specific data for your map.
Steve uses a simple query to obtain all map features that are considered “water”. This includes both natural and man-made features
The tool allows the user to export the filtered datasets into geoJSON format, an open standard format for storing and representing geographic data and attributes.
The geoJSON datasets collected from Overpass turbo can then be imported directly into MAPublisher for styling into a finished map. Use the Import tool to load the data onto an Adobe Illustrator artboard. From here, you can open the MAP View editor to adjust the scale and projection information for each map data layer. For this map, reproject the data into State Plane NAD 83 to preserve an accurate spatial scale. Set the scale option to 25,000 and customize the position of the map data on the artboard.
If needed, use the Vector Crop tool to trim the map data down to a specific area of interest, and simplify the layer to create smoother lines by removing excess vertices.
Back in Overpass turbo, you can build more specific query statements to extract individual features from larger data categories. Use the statement: name = “Niagara Falls”, to select polygon features specific to the waterfalls in that area.
Import this new data into MAPublisher, and drag and drop it into the same MAP View as the water layer. The data will be automatically scaled and projected to align with the water layer. Apply a graphic style fill for the water bodies and waterfall area.
Next, we can go back to Overpass Turbo and extract road and highway data. You can build out more complex query statements using basic database operators (i.e. and/or). For longer, complex query statements it helps to create saved queries that you can re-use. This map uses a saved query statement called “selected roads with residential” to extract line features covering most road types:
(highway=primary or highway=secondary or highway=cycleway or highway=path or
highway=motorway or highway=trunk or highway=tertiary or
highway=neighborhood or highway=footway or highway=service)
Import the roads data into the same MAP View as the other datasets. If you look at the MAP attributes you can see the road data is split into several different types. Steve use’s MAP Themes to create rules-based stylesheets to visualize the different road lines based on their road-type attributes. Steve designed a rule-set that made minor roads more subtle in appearance, while major roads and highways became more prominent. He also used colour to distinguish between pedestrian and vehicle network links.
Repeat this process with a building footprint layer and crop all layers in the final map to the artboard extent. The finished product is shown below (top). Some final touch-ups in photo editing software can be used to create a more stylized appearance (bottom).
Exported map from Illustrator
Stylized version modified with Photo editing software
***
About the Author
Steve Spindler has been designing compelling cartographic pieces for over 20 years. His company, Steve Spindler Cartography, has developed map products for governments, city planning organizations, and non-profits from across the country. He also manages wikimapping.com, a public engagement tool that allows city planners to connect and receive input from their community using maps. To learn more about Steve Spindler’s spectacular cartography work, visit his personal website. To view Steve’s other mapping demonstrations, visit cartographyclass.com
We are proud to announce the start of a new video-focused blog series called Mapping Class. This blog series will curate tutorials and workflows created by cartographers and Avenza software users from around the world. We begin with a mapping workflow from Steve Spindler, a longtime MAPublisher user, and expert cartographer. He has shared with us his own take on creating Orthographic locator maps by applying some neat design tricks and utilizing MAPublisher’s powerful projection tools to create a simple, yet effective map.
Steve has produced a short video walkthrough demonstrating his process and has summarized the technique in the written article below.
***
Creating Orthographic Locator Maps by Steve Spindler
An orthographic map is like a view from space. It’s useful for directing attention to someplace on the planet.
This video shows how an orthographic locator map is made in Illustrator using MAPublisher. The template illustrator file I use in the video is here.
We’ll start off by locating Paris on the map using Find Places. We need the latitude and longitude to create two projections.
Next, get the Latitude and Longitude from Map Attributes. You’ll have to turn MapX and MapY fields on. MapX is longitude. MapY is Latitude.
In Map Views, click on the projection, (ne_110m_land), and then select “Perform Coordinate System Projection”.
Select Projected Coordinate Systems and search for Azimuthal Equal Area. Duplicate, rename and set the definitions for the central meridian and the latitude of origin. There might be more than one. Pick one.
Select Projected Coordinate Systems and search for Orthographic. Duplicate, rename and set the definitions for the central meridian and the latitude of origin. There might be more than one. Pick one.
Select the new azimuthal projection, the one you created, and click OK to use it.
We use the azimuthal projection to crop data before creating the orthographic projection. Otherwise, there will be overlapping imagery. Next, create a buffer for the Paris point that is 10002.5 km around the point. This will be located on a new layer.
Use the path utilities tool to convert the bezier circle into polylines. Then reproject the map to the orthographic projection. Once completed, crop again with your circular buffer layer and delete the water layer. It will be replaced with a gradient.
Finally, add a radial gradient to the circular buffer layer and move the circle below the other layers.
Now you have an orthographic locator map that you can continue to style and label for your purposes.
***
About the Author
Steve Spindler has been designing compelling cartographic pieces for over 20 years. His company, Steve Spindler Cartography, has developed map products for governments, city planning organizations, and non-profits from across the country. He also manages wikimapping.com, a public engagement tool that allows city-planners to connect and receive input from their community using maps. To learn more about Steve Spindler’s spectacular cartography work, visit his personal website. To see the original tutorial article, or view Steve’s other mapping demonstrations, visit cartographyclass.com