Lab: Uff da! Labeling Minnesota (2/2)

Map of Twin Cities area

This lab cheerfully prepared with the help of Zach Bodenner, Great White North Cartography

Part B: Manual label adjustment

Part A of this lab covered automated labeling, which may sometimes be all you can do if deadlines are tight.  But, for when you have a little more time to finesse things, or there’s just that one label that won’t cooperate, manual labeling adjustments are the way to go.

For this exercise, you will update your map of Minnesota by adjusting your labels from the automated placement lab.  Start with a copy of your Minnesota map as submitted for the prior assignment. Make any large scale adjustments (font, size, color, etc.) before proceeding, and make sure you have a geodatabase set up in your lab folder (see Canvas for details).  The goal is to adjust only a few labels, not all of them.

Adding manual labels

The US/Canada border label can’t be done using automation because it’s a polygon, and the table values don’t contain what we need.  So, use the tools in the Insert ribbon (Layout view) to add those labels.  Find a nice spot on the border that is easy to label and use the Text option to add your labels.

Insert Text
Manual text options on the Insert ribbon

Note: Political borders are labeled with the name of each jurisdiction on its respective side of the line.  Labeling it “US/Canada border” is not helpful, and will be marked down.


You may find it helpful to use the Curved Text option to recreate any river labels that need to be moved, since just moving them will bring the curve from their prior location, which may not fit the new location.

Here’s a short video on Splining Text in ArcMap, which is essentially the same process.


Converting dynamic labels to annotation

Most of the rest of your labels should be fine as is.  If you decided to make any changes to your fonts, now is the time to do that, before you convert to annotation.  Don’t forget to check settings for label stacking, position, etc.  Once you’ve finalized the settings, you are ready to convert to annotation.  Zoom out to the full extent of the map before beginning, and verify that you have your default geodatabase set.

To convert labels to annotation, select Convert Labels to Annotation on the Map ribbon. Select the geodatabase (.gdb) you created in your folder as the Output Geodatabase. Leave all other settings on default and click Run. This will convert all labels on the map to annotation, and you’ll see them listed in the Contents pane.  To convert layers individually, turn the other layers off first, or select individual layers under Convert in the conversion pane.  Make sure to give each export a new name under Output Layer, otherwise you will overwrite the old version and lose your previous work.

Output layer option
Setting the Output Layer for annotation


Once your labels become annotation, they will show up as additional layers in your Contents pane.  You can turn them on or off as needed.

To adjust annotation, switch to the Edit tab on the ribbon.  Use the Select tool to choose a label.  Use the Move tool to reposition labels, and the Attribute tool to change font settings.  Here, you can make changes to the label text (e.g. abbreviating Saint to St.), and also to the font.

Click the green checkmark at the bottom of the screen (Pro 2.4: box with a pencil in it) at the bottom of the screen to apply an edit and refresh the map.  Save Edits (the Save button on the Edit ribbon, distinct from saving the map, which does not save edits) frequently, and don’t forget to also periodically save the project (regular Save button).

IMPORTANT: Once you convert to annotation, you can interact with each label individually. This can be problematic if you accidentally move a label you didn’t want to, so be very careful, and make use of the layer lock in the Contents pane to lock down layers while you’re working on others.

My sample workflow looks like this: Cities are the most challenging, because they are the most constrained in their positioning.  So I’ll lock all other annotation except cities, and get that mess around St. Paul sorted out. Once I’m happy with that, I’ll lock Cities, unlock counties, and then work with the county labels.  Once I’m happy with those, I’ll lock them… and so on.  If you make a change to some labels that goes horribly awry, delete just that annotation group, turn the labels back on for that layer, convert to annotation (be sure to give it a new name at the bottom of the pane), then try again.

Since the labels are all now individual text items, that means that if you want to make a widespread change (such as changing from black to dark gray), you will have to touch every single label in that group. To change multiple labels at once, select them all, then highlight the group in the Attributes pane before making changes to the symbol.  (Alternately, remove the annotation layer, turn labels back on and make the changes, then redo the annotation.)


Tips for Success

  • Sometimes adding manual text is easier. Adding (Inserting) manual labels happens in the Layout window; annotation happens in the Map window.
  • Only visible labels convert to annotation. Zoom out to your MN1 bookmark before converting to annotation, so you don’t miss anybody.
  • Don’t forget those hidden labels. Check “Convert unplaced labels to annotation” to have any missing labels be available as annotation
  • Add the hidden labels to the map. To view unplaced annotation, right click the annotation layer in question (drill down to the specific annotation), select Symbology, and in the right hand pane, check “Display unplaced annotation”.
  • Keep accidentally selecting the geography instead of the labels? Switch to List by Selection (at the top of the ToC) and turn off the feature layers.  This makes only the labels selectable.
  • Annotation lives in the geodatabase. If you accidentally delete an entire annotation layer from your map, just open Catalog and re-add it from the geodatabase.


Bonus tip: If you’ve added a fancy font for your title, and it’s not showing up in ArcGIS Pro, here’s a hack to get around that.


Lab: Uff da! Labeling Minnesota (1/2)

Map of Twin Cities area

This lab cheerfully prepared with the help of Zach Bodenner, Great White North Cartography

Effective use of labels on a map is an essential part of mapping. It should not be an afterthought in the mapping process. In addition to identifying features on the map, labels also help the cartographer to reinforce the visual atmosphere of the map as well as reinforce the hierarchy of features on the map.

For this exercise, you will complete a map of Minnesota by adding map text using the Maplex label engine and conventions we have discussed.  Refer to Chapter 4 from Mapping with ArcGIS Pro for details on how to use the tools.  This is a two part lab: in part A, you will assemble the map and add automated (dynamic) labels.  In the second part, you will add some manual labels and make manual adjustments to some of the automated labels.

Part A: Automated labeling

Download the MNTypePro2019.7z file and extract it into your Originals folder. Create a new map in your project and set the coordinate system appropriately for Minnesota.  You should have the following layers in your map:

  • Paul (St_Paul.shp)
  • Cities (MNCitiesSelection.shp)
  • US/Canada border (CanadaLine.shp)
  • Major roads (MajorMNRoads.shp)
  • Major lakes (MNLakes.shp)
  • Rivers (MajorMNRivers.shp)
  • Lake Superior (LSuperior.shp)
  • Counties (MNcounties.shp)
  • States & Provinces (statesprovinces.shp)

Arrange the layers with appropriate line weights and fill colors (grayscale only) to develop a clear hierarchy.  Symbolize the cities with graduated symbols in 3 sizes, with breaks at 50,000 and 100,000.  Make sure that your symbols don’t overlap.  Note that the Canada Line is a polygon, so represent it with no fill color for best effect. You may also find it helpful to extract Minnesota from the states layer to create a strong outline.  The map should have a definite hierarchy, as with your compilation sheet, before you begin labeling.

On the map you will label point, line and area features (see: What to Label).  For the first assignment, use only the dynamic labeling options, as detailed in the book chapter.  Pay special attention to placement options and stacking defaults to make sure you’re labeling things appropriately for the type of feature.  The goal is to get the software to place most of the labels acceptably.

It may be useful to refer to an existing map of the state when progressing through the exercise, to make sure clustered cities are connected to the right symbols, and to get an idea of how to handle multiple interacting lines. To see examples of similar maps you may refer to an atlas, the Googlesaurus, or do an online search for additional maps.

caution  Before you begin labeling, set the reference scale and a bookmark at your intended map extent (all of Minnesota)  you should also set the reference scale for the map.
  • Zoom out and frame Minnesota so it fits in the window. Select Bookmarks > Create.  Feel free to create additional bookmarks for challenging areas.
  • Set the reference scale by right-clicking the data frame in the Table of Contents. Select Reference Scale > Set Reference Scale (more details in the walk-through). Do this from your original display scale (the whole map).

One final note: Labeling requires a lot of time and patience.  There are many settings to adjust, and each one has the potential to rearrange the labels on your map.  You will get frustrated.  You will probably curse the developers at ESRI, your map, me, and possibly the entire state of Minnesota.  This is normal.  Take a break, and come back after you’ve had some comfort food, time outside, Xbox therapy, whatever.

What to label

  • Roads: Interstates and US highways, with appropriate shields. One label per road, unless it spans the entire state or requires clarification.  You may omit the beltways around Minneapolis and Duluth (use the minimum length settings to automate this); all others must be labeled.
  • Water features: Rivers and lakes. You may find it helpful to dissolve the rivers by name so it doesn’t label every tiny piece.
  • Administrative areas: Label counties in MN, label neighboring states and provinces only – the title will take care of your featured state.
  • Cities: Symbolize in 3 sizes, as noted above. Label in three classes also, to correspond with symbols.  Exclude St. Paul from the Cities layer using a Definition Query, since it has its own layer (so you can easily label and symbolize it separately).  Note the font size and style, as you’ll need it for the legend, if you elect to include one. Label all of the cities in the table (note that some may not be visible after this first part).

Remember that the query builder in ArcGIS Pro 2.5 now says [New expression] instead of [Add query] when working through the chapter concepts.

Tips for success

Halos should match the background area color.  The book provides a set color, use that only if your background is the same color as the one in the book.

Labels will move and disappear as you change settings.  In particular, St. Paul likes to hide, as do many of the other cities around the Twin Cities area.  Don’t stress about this – you’ll fix it in the second part with manual adjustments.

Think about your legend.  Do you need one?  Recall that legends are only for those features that are unclear, and you’ve got labels helping with a lot of that.  If you decide to include one, what do you actually need?

Plan out your font hierarchy.  The fonts in the book are a guideline, and are perfectly acceptable.  But if you want to branch out, you’ll need to plan out a similar strategy of weights, sizes, and typefaces to keep your features organized.

Part B: Manual label adjustment