CartoCrow is a framework that simplifies the implementation of algorithms in cartographic visualization. It allows researchers to experiment with these algorithms and use them to generate maps. The framework behind CartoCrow can be used to run other cartography algorithms online. CartoCrow consists of a C++ library which also provides a command-line frontend, and a web interface which allows end users to generate maps in a user-friendly way.
CartoCrow is available on GitHub here:
Modules
CartoCrow consists of the following modules. The modules marked (work in progress) are not yet in a finished state, while the modules marked (future work) are planned, but implementation work has not yet been started.
Thematic maps
- The necklace_map module implements necklace maps, a type of symbol map where the symbols are not displayed on top of each region, but rather placed as ‘beads’ on curves (‘necklaces’) surrounding the map.
Authors: Thijs van Lankveld, Willem Sonke
- The flow_map module (work in progress) implements flow maps, a style of thematic maps that visualizes the movement of objects, such as people or goods, between regions.
Authors: Willem Sonke, Thijs van Lankveld
- The chorematic_map module (work in progress) implements an algorithm for summarizing classed region maps with a single disk choreme.
Author: Steven van den Broek
Cartograms
A cartogram is a map in which the shapes of regions are distorted such that the size of each region corresponds to some variable, such as population.
- The rectangular_cartogram module (future work) implements rectangular cartograms, a style of cartogram in which each region is rectangle-shaped and adjacencies between regions are strictly maintained.
Authors: (to be done)
- The mosaic_map module (future work) implements mosaic maps, a style of cartogram that allows users to count individual tiles in each region to get a more precise reading.
Authors: (to be done)
Spatial set visualization
- The simplesets module (work in progress) implements SimpleSets, a spatial set visualization technique that uses simple shapes to enclose categorical point patterns.
Author: Steven van den Broek
Simplification
- The simplification module (work in progress) implements several algorithms to simplify maps consisting of polygonal regions.
Author: Wouter Meulemans
- The isoline_simplification module (work in progress) implements an algorithm to harmoniously simplify isolines; that is, isolines are simplified simultaneously such that common features are maintained.
Author: Steven van den Broek
Utilities
The core module contains the basic primitives and utilities that are in use throughout the library. This includes a list of type aliases for basic CGAL types and tools to read maps from Ipe files.
Author: Willem Sonke
The renderer module implements an interface that can be used to render maps to Ipe files or a Qt window.
Author: Willem Sonke
Credits
Initial development of CartoCrow was supported by the Netherlands eScience Center under NLeSC grant 027.015.G02 “Algorithmic Geo-visualization: from Theory to Practice”.