One of the subtasks of automated map labelling that has received little attention so far is the labelling of areas. Geographic areas often are represented by concave polygons which pose severe limitations on straightforward solutions due to their great variety of shape, a fact worsened by the lack of measures for quantifying feature-label relationships. In our recently published (online) paper, we introduce a novel and efficient algorithm for labelling area features externally, i.e. outside their polygonal boundary. Two main contributions are presented in the following. First, it is a highly optimized algorithm of generating candidate placements utilizing algorithms from the field of computational geometry. Second, we describe a measure for scoring label positions. Both solutions based on a series of well-established cartographic precepts about name positioning in the case of semantic enclaves such as islands or lakes. The results of our experiments show that our algorithm can efficiently place labels with a quality that is close to the quality of traditional cartographic products made by human cartographers.
If you really like well designed maps that are, in addition, labelled according to a rich set of cartographic principles, then you should certainly try out MapSurfer.NET framework. Remember that this framework was used for styling and rendering of amazingly beautiful maps that are available through our web map service OpenMapSurfer.
Rylov M.A., Reimer A.W. (2014) “A Practical Algorithm for the External Annotation of Area Features.” The Cartographic Journal. DOI: 10.1179/1743277414Y.0000000091.