The Cartographer’s Guide to FME: 6 Steps to Making Beautiful Maps
The best maps are those that embrace both science and art, making them both informative and eye-pleasing, both accurate and expressive. To make this happen, cartography has to include both automation and creative design— a process of gathering, filtering, manipulating, and styling data.
The challenge is achieving all of this in a smooth workflow, one that’s repeatable and easy to expand upon. Our developers have considered the most painful challenges at each step, like blending different sources, preparing and cleaning data, and automation (keeping the map up to date with a repeatable workflow), and created transformers to help ease the process. Let’s look at the steps involved in the cartography workflow and which transformers are the most useful.
First, pull data from whatever sources you have access to: GIS, CAD models, DEMs, etc. Consider what will make the information as rich as possible without interfering with the map’s clarity.
2. Data cleaning
Make sure your source data is free of problems. This is quite a topic so I won’t go into detail here, but take a look at our multitude of resources, including:
- Tutorial: Data Validation and QA with FME
- The Ultimate Geospatial Data Validation Checklist
- CAD & GIS Webinar
A few useful FME transformers: Intersector, AreaBuilder, Snapper, SliverRemover
3. Data enrichment
Enrichment means adding valuable information to data features. This information can be anything that tells us more about the geometry and attributes — what other features are nearby, how round or oval the feature is, how it’s positioned, etc.
One example is in determining the order that streams flow through a landscape. This can be done with the StreamOrderCalculator transformer, which considers how streams and rivers merge to create a hierarchy and tells you how thick each one should be.
A few useful FME transformers: anything with ‘Calculator’ in the name (e.g. AreaCalculator), SpatialFilter, NeighborFinder, BoundingBoxReplacer
[ Watch our cartography webinar, where Dmitri and Jen demo all of these steps. ]
Generalizing a map means deriving simpler polygons and/or a smaller-scale map, so you can visualize an area without including unnecessary details. This process might include simplifying geometries, combining areas, changing geometry types (for example converting polygons to points), modifying geometries to meet requirements, or reducing the number of vertices.
A few useful FME transformers: Dissolver, Generalizer, AreaAmalgamator, Displacer, CurveFitter
5. Beautification and styling
Here’s where the art comes in. Set the features’ appearances, add labels, and do whatever you need to make it look amazing. For example, use the MapTextLabeller to define rules on how everything should be labelled, or the MapnikRasterizer to convert the map into a nicely styled raster.
A few useful FME transformers: anything with ‘Styler’ in the name (e.g. DWGStyler), MapTextLabeller, MapnikRasterizer, RasterHillShader, Labeller
The final step is to pick your means of delivery. This might be a CAD or GIS format, PDF file, raster image, a Word or Powerpoint file, or a tile cache on a webpage.
For example, Dmitri made a stylized tiled web map that renders different images as you zoom in.
Real Cartographers Using FME
We asked FMEers to send us maps they’ve generated with FME. We got amazing work from Owen Powell, Holly Coxon, Hans van der Maarel, and Joanna Hobbins. Take a look in the below video (extracted from the full webinar).
Through this process of integrating, transforming, and styling data, cartographers can more easily achieve the goal of making the world more understandable to everyone. The FME transformers above are just ideas. For more, browse the transformer gallery and cartography tools added to FME Hub by users, and check out our cartography webinar to see demos.