Words, phrases, and sentences, when strung together, visually take on a dimension of their own. Their shape and their postioning in relation to each other make the type appear as a thing. In typography, it is this thing, the type as a whole, that is referred to as "text". Text can appear as a solid, as when a paragraph of type fills a text block, or more like a fluid, with numerous spaces, breaks, and visual placements that communicate airiness or flow. Variation in shape and positioning occurs within individual words as well as between lines of text. As with characteristics of the type (e.g. size, typeface, style, color, etc.), characteristics of the text (e.g. letter spacing, line spacing, alignments and positioning) communicate information to readers. In cartography, we are specifically concerned with communicating spatial locations, and thus, much of the placement and arrangement of text within cartographic design is related to communicating locations of features in the map. We will focus on that below in the subsection on label placement. But in addition to positioning of text within the data frame, good cartographic design includes titles, headings, and legends (amongst other kinds of text) within a visual hierarchy of both text and graphics. Let us briefly discuss spacing and alignment within pieces of text, e.g. labels, headings, or in the legend, and then we will discussion placement of labels in more detail.
Letter spacing (also character spacing or tracking) refers to the horizontal spacing of the letters throughout a word, line, or block of text. Letter spacing can create a lighter more airy piece of text, which, for cartography, is often useful for area labels in maps. Increasing the size of a label to fit its area may result in a label that is visually too high in the visual hierarchy. Increasing the letter spacing, on the other hand, can communicate a larger area is being labeled without arbitrarily elevating its importance. For two examples, see the Hawaiian Seafloor map below, and the full version of the Oyster Appellations of the Pacific Northwest map (from Figure 3.cg.5). In that example, in addition to letter spacing, the labels for the bodies of water use color hue and value to lower their contrast with the background to further reduce their visual impact.
Letter spacing improves legibility for text that is in all capitals or small caps, and when using white type on black backgrounds. Consider letter spacing for titles, data frame headings, and/or labels that use capitals or small caps. Lowercase letters, especially italics, are designed to fit more closely together, so they can look awkward with too much letter spacing. Negative tracking (reducing space between letters) is rarely done, but is sometimes used with lowercase letters at large sizes when they appear to have too much space between them.
Kerning is the adjustment of letter spacing between pairs of specific characters in order to achieve similar blank areas between all letters in the word(s). In maps, a lot of the type is made up of labels, often with wider letter spacing or curved text, which do not require kerning as much. But it may be useful for titles and headings in larger type.
Kerntype is an online game that teaches kerning. Go to the link and kern letters within the words provided. You will be able to compare your results with a typographer's solutions.
Line spacing, also known as leading, is the vertical distance between two baselines of type. The larger the spaces inbetween the lines, the more independent the lines of text appear. Decreasing the space creates a denser object. Typically, in blocks of text line spacing is between 120% and 145% of the point size of the type. For instance, 10 pt size type with line spacing at 120% would use 12 pt line spacing (and would be represented as 10/12 type). Line spacing, like letter spacing, can be used to indicate areal extent when you have text that can be split into multiple lines. Due to labeling and more short pieces of text used throughout maps, automated line spacing is not as crucial as making sure to adjust vertical space between labels or lines of text to create balance and an even appearance. Uneven spacing between lines can occur if you need to represent different sizes of type in the legend, for example. Pay attention to the spacing between, and around, lines, and balance the space as much as possible, while also refecting on how dense you want the lines of text to appear.
Alignment of text, or other elements within a map, should be clear, rather than happenstance. Separate pieces of text near each other horizontally should be aligned along a shared baseline, whether they are the same size type or not. Blocks of text can be justified, centered, flush left, or flush right. Each one has its own qualities, aesthetics, and cultural associations. For instance, justified text makes clean shapes on a page (but can have unsightly gaps), is considered more formal, and it is often associated with print newspapers, journals, and books (that are primarily text). Centered text is often used for titles (and title pages), headings, invitations, and certificates. Centering text allows one to break the text for sense, allowing new thoughts or important information to sit independently. Flush left text (that is ragged on the right) has even spacing and fits with relaxed flow of language. It is commonly used in poetry, and for online text. And lastly, flush right text is often used for smaller chunks of information, set off from the norm. For example, captions, sidebars, quotes, or other small passages may use flush right text to distinguish them from a larger body of text. Flush right text is sometimes used within labeling if text is stacked and labels need to be on the left of the feature being labeled. Flush right is rarely used for long bodies of text because it is considered harder to read.
Label placement communicates location information to the map reader in addition to identifying the feature it is associated with. In a complex map with many features and labels, label placement can be a very challenging problem. Indeed, Van Dijk et. al. (2001) noted that label placement can consume up to 50% of the total time a cartographer spends on designing a map! It is not surprising, then, that cartographers have expended a great deal of effort in trying to automate the process of label placement by using different techniques for formalizing the rules that cartographers use for this task within computer algorithms and programs. In this concept gallery item, we will discuss both the general guidelines for label placement and a few of the attempts that cartographers have made for automating this process.
In his seminal paper on label placement, the Swiss cartographer Eduard Imhof described several general principles for positioning names on maps:
- Names should be legible.
- Names should be clearly associated with the features they refer to (i.e., they should be placed in an unambiguous position).
- There should not be overlap among labels or other map content, if possible.
- Names should help the map reader obtain an understanding of the spatial distribution of map features and their spatial extents (Imhof 1962/1975).
These basic tenets are still used by cartographers today when they work with labels. However, the most important piece of advice Imhof provided in his paper is: "There is – and I emphasize this – no rule without exception." (Imhof 1962/1975, p. 129). It is these exceptions that have challenged cartographers who have tried to automate label placement.
One of the first attempts at automating label placement was described by Yoeli (1972). He worked primarily with labels for point features, and defined a set of priorities for placing labels that is used (in some form) in many automated systems today (see Figure 3.cg.10, below). In his system, the preferred location for a point feature label (all other factors being equal) was to the upper right of the feature, with a hierarchy of preferences moving from the corner positions to positions that are in line with the feature.
Since Yoeli’s work, cartographers have developed several other systems for automating label placement. These efforts have recognized that there are often multiple criteria to consider when placing labels (i.e., that what is ‘best’ in one context is not necessarily the ‘best’ in all contexts). For example, Huffman and Cromley (2002) described a system for placing point labels that used both constraints (e.g., labels should not overlap with each other or with features) and goals (e.g., place labels in more preferred positions when possible) for placing labels. Chire (2000) developed a system for placing linear feature labels (street names) that generated a number of possible label positions (the candidate positions) and then evaluated the candidates and selected the best one using a mathematical model. Finally, Barrault (2001) developed a system for placing areal labels so that they best indicated the extent of each area (see principle 4 from Imhof above). He noted that cartographer’s efforts to automate label placement would be difficult to improve upon if the system cannot evaluate the quality of different potential solutions using all of the criteria that a human cartographer would use. Van Dijk et al. (2002) recently developed a quality function that incorporates the high-level rules that cartographers use for placing labels (i.e., Imhof’s general principles) that can be used to rank the overall quality of different potential label placement solutions for a map.
In the remainder of this concept gallery item, we will provide some examples of what solutions automated label placement algorithms generate and contrast them with changes a human cartographer would make. You can use these examples to help guide your own efforts in placing labels.
In the figure below you can see in the left map, with automated point label placement, that several (indeed most) of the labels conflict with either another label or another map feature (such as a map symbol or polygon boundary). Label placement can be greatly improved by simply adjusting the position of many labels, as seen at right. However, there are still some problems often caused by geographical constraints that careful positioning cannot resolve (e.g. the Liverpool label).
One solution to the problem of the Liverpool label is to relocate the Manchester label outside of the polygon and use a leader line to indicate the map symbol to which the label refers. This repositioning then creates a space large enough for the Liverpool label (see Figure 3.cg.12, below). Leader lines, when used sparingly, can aid the legibility of a map, but if leader lines are used for many or all of the labeled features, the labels would detract from the map reader's ability to understand the spatial distribution of the features.
Ideally you want point labels to be positioned on the same side of linear features as their points, e.g. a feature on land should have its label within the land boundary, rather than in the water. But with numerous conflicts, placing labels becomes a process of determining which placement guidelines help convey location and identity optimally, and which guidelines can be sacrificed. Often when labeling point features near water bodies, labels for coastal features can be placed completely in the water providing more space inland, and preventing labels from having to cross linear boundaries. See the figure below for an example.
Automatic label placement for line feature labels creates similar problems to those we saw in the point feature example, such as creating conflict with other map features. In this case, however, we also have the added problem of the cartographer needing to add repeated labels (i.e., the set of labels we use for longer rivers) and correct labels that are "upside down" (see Figure 3.cg.14, below).
Line label placement algorithms are not very good at placing labels in logical locations. For example, line labels are easier for the map reader to read if they are in a relatively flat area along a river (e.g., compare the position of the Elbe river label in the center of the map below with its position in the map above). Labels are also more useful to map readers if they are placed in a location that gives the map reader a better understanding of the river’s overall length (e.g., you can give the reader an indication of the river’s length by repeating labels as in the Rhine or Donau rivers in the map below). Cartographers also often add curvature (called a spline) to line labels to improve the label’s fit to the line (e.g., the Maas or Weser rivers in Figure 3.cg.15, below).
If you are interested in investigating this subject further, I recommend the following:
Van Dijk, S. et al. 2002. "Towards an evaluation of quality for names placement methods." International Journal of Geographical Information Science. 16(7): 641-66.