A new mapping software

In this part of the project "Our Inhabited Space", the cartogram principle
(transmorphoses of map background based on a given series of data)
has been used to design a general, versatile mapping software.

Cartograms: an interface between social theory and mapping technology

Abstract: Cartograms can be seen as images of space with a non-metric dimension. Even deformed, the space remains continuous, and it still has the same topology. Our cartogram framework opens a new field for the complex visualization of social phenomena. Polygon and line based cartograms can both be created while deforming at the same time several layers. The cartogram creation is possible for non-specialists and the focus can be put rather on the perception of space than on a technical and abstract cartogram creation process. Technically, the advances are in the integration of several layers, the treatment of complex forms and the possibility to consider other forms than polygons (especially lines) as deformation source or constraint.

The visualization of social phenomena through classical thematic mapping often leads to unsatisfying representations. Classical political referendum maps, for instance, lead to an underestimation of the opinions expressed by populations of large urban agglomerations. Classical maps of BIP, religious belief, or social segregation give a distorted image of the world by linking the relative importance of quantitative and qualitative values of such variables to the Euclidian topographical extent of the statistical areas where these values are measured.

Cartograms are a well-known technique used to compensate for this inconvenience by breaking the link between statistical regions and their topographical areas. Consequently, this liberates one visual variable (that of polygon size) for a more relevant use, such as the representation of the relative social importance of these regions (usually measured by the size of their populations), while leaving intact their topological relations.

Although well-known, the cartogram technique is still underused. We relate this fact to three restricting factors: (a) a difficult lecture for a large public used to topographical space geometries (b) the inability of cartograms to represent complex spatial layers and (c) the unavailability of user-friendly stand-alone cartogram software.

The goal of our work, as discussed in the present paper, is to compensate for these flaws..

State of the art of cartogram production and diffusion

The production of a cartogram is actually a map deformation problem. The goal of a cartogram algorithm is to equalize density across space with given geometric boundaries and density values associated to spatial partitions delimited by these boundaries. However, there is no unique solution to this problem.

The aim is to deform the initial geometric boundaries to minimize the size error, while simultaneously changing the polygon shape and respecting the topology. Polygon shapes should accordingly keep their original forms as much as possible to remain recognizable. The total area of the region under study should stay constant.

The deformation source is generally a polygon with an associated statistical value that represents the importance of the polygon area. A variant of this cartogram deformation type is displayed when the deformation source consists of one or several points located in a polygon, with several statistical values conjointly defining the polygon deformation. As illustrated in the graphic below (representing the agglomeration of Lausanne, Switzerland), this deformation can also be constrained by other spatial information layers, such as transportation network lines.

Several cartogram algorithms have already been proposed (e.g. Dougenik et al. 1985, Gusein-Zade and Tikunov 1993, Dorling 1996, Kocmoud 1997, Gastner and Newman 2004, Keim et al. 2005). However, according to our present knowledge, these algorithms are restricted to the polygon deformation case, or to a variant thereof, adapted for raster images.

Additionally, there are certain stand-alone programs that implement several of these algorithms (e.g.Mapresso [http://www.mapresso.com]). These programs are nevertheless limited to only one polygon layer at a time and no real constraints help the user with the deformation control for a given object. For this reason, we decided to create a flexible constraint-based cartogram creation framework in order to have a user-friendly application that should run with an acceptable speed, even for complex layers.

Our cartogram framework

Our cartogram framework is a cross-platform, open-source application written in Java, primarily designed as an independent application using the ESRI Shapefile format for input and output. An integration of the algorithm into other GIS is still possible in the future.

The most important feature of the cartogram framework is the internal data structure for the representation of the geometric objects. There is a point database common to all layers and every geometric object exclusively contains a reference to the corresponding point in the point database. Therefore, if we displace a given point, all the geometric objects containing it are automatically modified. The computational amount is reduced, which differs from more classical approaches that store each polygon separately in memory.

In order to control the deformation and keep the shape of the polygons and lines as recognizable as possible, we have introduced geometric deformation constraints. The topology of the polygons and lines is respected, even if more than one layer is deformed at the same time. Moving a point can be considered as applying a force vector to that point. Instead of simply applying this force vector without control, we verify whether the topology is still intact after its application. There are several topological constraints, like self-intersection for polygons or closing (two opposites lines are grouped together). If the topology is not guaranteed, we try to apply a smaller force vector. In the case of failure of the application of a smaller force vector, the deformation is completely rejected. This mechanism guarantees the integrity of the topology.

Another pertinent mechanism is the influence of a force vector application on the neighborhood. Instead of simply applying the force vector to one point, the force also interacts on the adjacent points. The force of the vector applied to the neighborhood diminishes with the distance. The framework can thus work with complex polygons through the weighting of several polygon parts. We call this feature «multi-polygon respect».

In order to guarantee the convergence to a possible solution of the cartogram problem, the application of a force vector that increases the global size error is rejected. Therefore, with our cartogram framework, even the use of random force vectors should theoretically lead to a solution of the cartogram problem. Several cartogram algorithms can then be feasibly attempted. The implementation of several algorithms is possible and different results can be compared.

At the present stage, we have implemented a small set of different algorithms that have been specially adapted for the use within our cartogram framework. In order to optimize user-friendliness, we try to make a reasonable estimation for each adjustable parameter. An experimented user may, however, change these parameters in order to optimize the cartogram creation process.