Keywords

1 Introduction

Technological advances over the last decades have provided the settings for many rapid developments in the field of multimedia hard- and software (e.g. Brynjolfsson and McAfee 2012). Since then, daily life has accompanied by multimedia animation in entertainment, advertisement or in public outreach, education and science. As Nöllenburg (2007, p. 276) summarizes: “since the 1930s cartographers” have been “experimenting with map movies and animated maps”. Since the 1970s, technical environments and tools have been providing interactive visualization for information through efficient mapping of real and abstract objects and time-dependent phenomena (e.g. Friedhoff and Benzon 1989).

In the field of geoscientific research, process animation is commonly used for the visualization and exploration of temporal data, model validation and demonstration (e.g. Dransch 1997, 2014). Until today the integration of temporal data into GIS and the correlation of object changes are an open issue and require adaptations of the underlying data model, i.e. storage, management, and (carto-)graphic visualization.

In order to implement temporal changes the underlying data model has to be expanded by temporal basic types, the overall object structure requires rebuilding and graphical information needs to be implemented. This additional information level increases system complexity and the entire analysis process. Animation of thematic information does not only need an overarching concept and technical implementation of visualization techniques, but it also requires an efficient way of storing dynamic data in an underlying data structure (e.g. DiBiase et al. 1992; Harrower and Fabrikant 2008). However, the full representation of data’s temporal character has not been implemented in common off-the-shelf GI products yet (e.g. Andrienko et al. 2010). Based on these boundary conditions the higher–level aim is to develop a structural environment for storing and accessing spatial data primitives (see OGC 2011) as temporally dependent objects in a way that they can be accessed, visualized and animated by making use of spatial feature attributes.

In order to accomplish this, we here focus on the following tasks:

  • Providing a brief summary about the theoretical background of map animations and variables within GI systems.

  • Illustration of methods for storing and visualizing temporal objects in dynamic map animations.

  • Establishing a concept for multidimensional animation of point symbols and description of the formalism on which this concept is based upon.

We here target in particular on animations that depict changes of objects through time caused by distinct processes. Here, distinct processes are actions that are defined by a distinct start and a distinct terminating event (see also Dransch 1997, 2014). Animations without temporal reference frame information, so called non-temporal animations, are not considered here. Furthermore, we here focus on point symbols which represent a generalized areal or linear object in an abstract way. While points represent the lowest level of geometry and topology they provide the highest level of abstraction, which furthermore implies that any higher level or derived object can be modelled in a similar way as well.

2 Background

This paper is concerned with a data concept that allows implementing spatial data primitives as time–dependent map objects in order to access, statistically evaluate and cartographically animate them. In order to do this, we first try to establish a connection between topical areas that are being addressed: variables (in Sect. 2.1), map animation (Sect. 2.2), and GIS and time (Sect. 2.3).

2.1 Graphical Variables

The way objects and their changing state can be displayed on a map depends on the complexity and number of attributes, and also on the level of measurement. Bertin (1983) defined the fundamental graphic variables as size, shape, orientation, colour, pattern and value (also colour saturation). Beside this he proposed rules which help to describe and categorize the appropriate use of these graphical variables. Over time, it has been argued that his typology–syntactic set of graphic variables does not suffice to cover all aspects (MacEachren 1995), especially because of new advances and capabilities of computer-assisted mapping, map animation and geo–visualization. In addition to graphic variables used within static maps, “animated maps are composed of three basic design elements or dynamic variables: scene duration, rate of change between scenes, and scene order. Dynamic variables can be used to emphasize the location of a phenomenon, to emphasize attributes, or to visualize change in its spatial, temporal, and attribute dimensions” (DiBiase et al. 1992, p. 201). Accordingly, six dynamic variables were suggested by MacEachren (2005): “(1) temporal position, i.e., when an object is displayed, (2) duration, i.e., how long an object is displayed, (3) order, i.e., the temporal sequence of events, (4) rate of change, e.g., the magnitude of change per time unit, (5) frequency, i.e., the speed of animation, and (6) synchronization, e.g., the temporal correspondence of two events” (Nöllenburg 2007, p. 268).

2.2 Cartographic Animation

Due to the interrelated nature of location, attributes and the temporal aspect, Ogao and Kraak (2002) underlined that animated maps work very well for the visual and explorative analyses of complex systems. Within cartographic animations the viewer is allowed to “deal with real world processes as a whole rather than as instances of time” (Ogao and Kraak 2002, p. 23).

For visualizing spatial data within a map as time–dependent sequence, map sequences representing individual frames (e.g. as animated Graphics Interchange Format, GIF) are commonly combined. This is demonstrated by Peuquet and Duan (1995) with the “snapshot” approach. In this concept all spatially relevant parameters are directly linked to each individual frame and temporal progression is managed by an external time line. This frame-based animation can be created within non-spatial graphic systems, mapping environments, or within GI systems. Apart from presenting map animation in such a flip-book style, other systems are capable of interpolating changing objects between two or more instances (e.g. Rase 2000; Marschallinger et al. 2006). For more background on geovisualization in general see Dykes et al. (2005). A summary on the topic of geographic visualization is given e.g. by Nöllenburg (2007), and a general review of animated maps has been provided by Harrower (2004).

2.3 Temporal Databases in GIS

The origin of time geography can be dated back to 1970 when the concept of the space–time cube was proposed by Hägerstrand (Hedley et al. 1999). Within this concept space and time are considered as inextricable elements. “In its basic appearance the cube has on its base a representation of the geography (along the x- and y-axis), while the cube’s height represents time (z-axis). A typical space–time–cube could contain the space–time paths of for instance individuals or bus routes” (Kraak 2003, p. 1988). Talking about an application of this space-time cube Kraak (2003) proposed, e.g. an extended interactive and dynamic visualization environment, where data can be viewed, manipulated and queried flexibly within the cube. For detailed information about the representation of space and time the reader is referred to Peuquet (2002).

Today these concepts serve as basis for integrating time aspects into existing GIS environments. The way how temporal animations—and thus time—can be arranged and managed within database management systems have been discussed since the 1990s (e.g. Ma and Wang 1999; Peuquet 1999; Wachowicz 1999; Ott and Swiaczny 2001). A comprehensive overview and in many parts philosophical treatment of multidimensional object in GIS is given by Raper (2000).

Current GIS–based implementations dealing with either time integration and/or animated maps approach the issue by either time fields addressed by time sliders (Graser 2011; Esri 2015) or via a multi-layered image formats, such as the Unidata netCDF format for array–oriented data, representing time slices within a space-time cube (now also adopted by Esri 2015).

Apart from mostly desktop-oriented solutions for time and space management there are a number of commercial and free online systemsFootnote 1 with a focus on map animations. A practical example dealing with cartographical animation for visualizing geological processes is given by Marschallinger et al. (2006).

3 Methods and Approach

The approach presented herein is a combination of concepts described above. That means that spatial and attribute data (including their inherent time relation) as well as graphical attributes needed for cartographic animation are to be arranged, managed and stored in a single model. By doing so, this model covers all information needed for an efficient and ample visualization of a natural process and could potentially be transferred between different cartographic systems and GIS flavours.

In order to approach this issue, we here describe the theoretical concept for cartographic animation of multidimensional point symbols.

  1. 1.

    First we try to summarize the nature of temporal changes which characterize natural environments with their objects and processes. We then correlate these changes to graphical variables by which these changes could be visualized within cartographic representations.

  2. 2.

    In the second part we present the concept for multidimensional point symbols. The concept has some surficial resemblance to conventional approaches (e.g. the space-time cube discussed by Hedley et al. 1999; Kraak 2003) due to a similar graphical depiction of space–time.

  3. 3.

    Lastly, we briefly point towards the formalism on which the concept is based upon.

Regarding the conceptual arrangement and organization of data within its spatiotemporal context, some effort has been made in the past. One example is described by Peuquet and Duan (1995) and Peuquet (1999) in which the authors proposed to “maintaining the explicit storage of temporal topology as an adjunct to location- and entity-based representations in a temporal GIS. […]. All changes are stored as a sequence of events through time” (Peuquet 1999, p. 96). The concept presented herein picks up this approach and represents a conceptual implementation for storing temporal changes as a sequence of events.

By modelling cartographic animations within GIS environments, time parameters are arranged and stored as efficiently as spatial and non–spatial attributes. Thus, a direct link between object geometry and graphical visualization is established which allows to manage, visualize and store all correlated data.

4 Symbol-Cube Concept

4.1 Temporal Changes in Natural Environments

As explained by Kraak (2007 p. 317) spatial–data animations can depict change in space (position), in place (attribute), or in time. All objects and processes have at least two temporal attributes which are (1) time of origin or creation t i and (2) time range of an object’s existence Δt (see Sect. 4.3). In the same way as spatial location and extent are described by a map scale, time-relevant attributes can be described by a temporal scale allowing to capture events in real-time or in any slower or faster pace. It seems appropriate to differentiate processes in terms of their extent and their duration in order to (a) understand different scenarios which need to be depicted within a map-animation data model, and to (b) generate a set of rules for calculations based on these scenarios.

The different types of time-dependent attributes in which time-scale and objects or process can be characterized, are shown in Fig. 1. Whereas the temporal range covers the whole time period of an investigation period, a process represents one particular time period within this temporal range and start and end point are temporally located within this range. The temporal event describes a distinct incident and is defined by a concrete time stamp. However, it should be noticed here, that an event could also be described as a process on a larger time scale. These definitions serve as basis for implementing cartographic animation parameters into a subsequent data model. Other resp. comparable definitions are described by e.g. Galton (2009).

Fig. 1
figure 1

Different temporal types that characterize the natural environment (Nass and van Gasselt 2015)

Time and all time-dependent information which describe objects and process changes require an adequate (carto-)graphical representation. Adequate here means that the temporal character is visualized in such a way, that the dynamic character of an object and process can be communicated by map animations.

In which way the temporal aspects can be visualized by graphical variables and how these are classified within their scaling level is shown in Table 1. The possibilities of how changes can be displayed depend on the complexity and number of attributes but also on the scaling level (Bertin 1983). Changes may occur individually but also in combination (here called 1–3 dimensional). Such changes, when represented within their temporal framework, communicate rates of change, e.g. velocities, growth, decay rate, spreads.

Table 1 Level of measurements for graphical variables used for visualizing changes of physical object

As shown in Table 1 different changes of objects, i.e. composition, size (growth), and direction (velocity) could be represented by the graphical variables colour, value, size, and orientation. However, as the structural environment would allow for a higher complexity by taking also qualitative attributes into account, we here focus on quantitative object characteristics and their changes. This consequently means that graphical variables such as shape are not considered in order to keep a focus on the abstract point level.

Generally, object changes can be grouped into

  1. 1.

    changes from a discrete state to another discrete state by size, directional or compositional (colour) properties. Here, the change of state is either positive or negative and always absolute, and

  2. 2.

    changes of a discrete state by a value. Here, the change can be positive or negative, and is always relative with reference to an earlier state.

These temporal changes, i.e. temporal types (shown in Fig. 1), graphical variables and change rates serve as basis for cartographic animations of multidimensional point symbols within GIS. Thus, these parameters were used to provide a formalism which is needed for the structural environment is presents in the following section and is described in the Sect. 4.3.

4.2 The Time-Attribute/Symbol Cube

As shown in Table 1 there are three different types of how objects and environmental processes could be changed. Before it is possible to integrate these 1–3 dimensional changes within a structural environment for storing and accessing spatial data primitives it is necessary to arrange the graphical variables within a model. For illustrating this, a three-axial coordinate system is used. Each of the three axes represents one graphical variable by which changes of objects or processes can be described (see Table 1). The x-axis represents the colour attribute, the y-axis represents the size, and the z-axis describes the orientation/rotation attribute (see Fig. 2a).

Fig. 2
figure 2

Symbol-cube for 1–3 dimensional symbols (C represents colour, S size, and R represents rotation)

The time–attribute’s cube is placed on a timeline with its origin at an instance in time (see Fig. 2b). Figure 2c shows how the 1–3 dimensional change can be described independently of temporal scale (as inertial system) and changes on different axes.

The white dot at {0;0;0} in Fig. 2c represents the origin and a state without changes. The light grey dots on {0;1;0}, {1;0;0} and on {0;0;1} represent a 1-dimensional change either in colour, size or orientation/rotation, respectively. Middle grey dots on {1;1;0}, {1;0;1} or on {0;1;1} represent 2–dimensional changes either as combination of colour and size, colour and rotation or size and rotation. The dark grey dot on {1;1;1} represents the 3-dimensional change with changes in colour, size and orientation/rotation.

By using this parametric cube all conceivable 1–3 dimensional object and process changes can be represented. To establish a temporal context and cover not only temporal events but also processes and ranges (shown in Fig. 1), a timeline is needed which is associated to the symbol cube. It is, by definition, scaled by interval. In Fig. 3 the time–attribute cube and the timeline are illustrated with the cube’s origin located on the time line.

Fig. 3
figure 3

Symbol-cube variations connected to temporal aspects by a timeline

By doing so, the temporal status is saved in t1, coded as date time field, and is complemented by 0–3 attributes {S1;C1;R1} describing the object’s changes. By sliding the cube along the timeline to the next known object or process status the values can be updated: {t2;S2;C2;R2}.

In order to depict negative values, all axes are extended over the cube’s origin. As shown in Fig. 4 the upper area covers all positive changes by {t1;S1;C1;R1} and the lower area covers all negative values {t2;-S2;-C2;R2}.

Fig. 4
figure 4

Symbol-cube combination of positive and absolute as well as negative and relative (delta) values connected to temporal aspects by a timeline

In the same way, any other positive or negative value on one of the three axes can be depicted showing, e.g., {t1;S1;C1;R1} → {t2;-S2;-C2;R2} (shown in Fig. 5). This case would visualize a point symbol which depicts an object’s decrease in size and a backward rotation by an absolute value. The graphical variable colour represents a change of class or composition.

Fig. 5
figure 5

By individual rotation on all 3 cube axes all object changes and changing combination (positive, negative, relative and absolute) could be visualize

The concept of the attribute-time cube and the underlying model allows animations based on single–object sequences. All corresponding attributes describing objects spatially, graphically, and temporally are stored in one structured environment which can potentially be integrated within a GI environment.

Before such a concept and its formalisms (see Sect. 4.3) can potentially be implemented in a data model, it has to be supplemented by additional auxiliary attribute information describing graphical variables and operations in more detail.

  • Scales: sizes and rotations can be modelled on a relative as well as on an absolute scale, or even as a combination of both. While absolute changes are easy to implement, there are two possibilities to depict relative changes: by value or by percentage. Additionally absolute and relative rotations require directional information as each angle (domain 0…360°) can be approached in both, clock-wise and counter-clock wise directions.

  • Units: each attribute axis has a specific unit which can change between different models. Rather than assuming a fixed unit, a unit needs to be assigned within the data model.

  • Colour: an attribute must be reserved which describes the colour model and the actual change within this colour model (ramps, hex values, RGB, IHS, CMYK, …).

For related concepts handling timelines the reader is referred to Peuquet and Duan (1995) and the event list presented there.

4.3 Formalism

The time–attribute cube described in Sect. 4.2 provides a visual interpretation of some of the formal background briefly highlighted hereafter. It is, however, an attractive representation as we do not have more than three graphical variables which need to be depicted.

As a first definition, we assume a linear progression of time along a universally valid and linear scale. Each instance of time t i , each discrete event is described by a date–time attribute (such as yyyy-mm-dd-hh-mm-ss.sss) to which the individual state of three non-spatial and non-temporal symbol attributes (i.e. graphical variables) are related: (1) colour c, size s, and rotation ϕ. Thus, variables are described by attributes and exist within their individual inertial system which is moved along the t-axis.

A state of attributes at an instance i is described as {ti; ci; si; ri}. At another instance of time ti+j, attribute values may have changed completely, partially or not at all {ti+j; ci+j; si+j; ri+j}. The change of attributes between two time instances is described by the absolute difference between attribute values at two instances ti and ti−i with Δt = ti+j − ti:

  1. 1.

    absolute difference

    {Δc; Δs; Δr} = {ci+j – ci; si+j – si; ri+j – ri}

  2. 2.

    relative change

    {δc; δs; δr} = {ci+j/ci; si+j/si; ri+j/ri}

  3. 3.

    rate of change

    {\( \dot{c} \); \( \dot{s} \); \( \dot{r} \)} = {(ci+j – ci)/(ti+j – tj); (si+j – si)/(ti+j – tj); (ri+j − ri)/(ti+j − tj)}

Each attribute and each value can be accessed using relational operations by selecting over the time attribute.

A point symbol may represent a size s of a real-world-feature which has an initial size s i and which increases to a size si+j at ti+j and it may decrease to size si+k at ti+k. Its total size difference is given by Δs = si − si+k which might be positive or negative. It can also be depicted as sum of differences ΣΔt along each instance of time: si − si+j − si+k.

Since each time–attribute cube on the timeline represents a change in time, and a distinct state of attributes colour, size, rotation with either none, one, two or three values deviating from zero, we can depict each state of attributes at a given time by a positional vector along the timeline to the instance of time and direction vectors indicating the change. Geometrically, the difference between two direction vectors at different instances of time returns the measure of change for each attribute from which absolute, relative as well rates of change can be easily extracted. One should note, however, that a depiction of changes is always dependent on sampling, i.e., observation intervals, e.g. for directions a change of 360° between two observations results in no visible change on the map. This, however, needs to be kept in mind when working with all sort of sampling data and a map animation can only represent what has been measured in the field. While the map would not be able to show this type of change, a temporal query would allow to see it.

5 Conclusion and Outlook

Today, various branches such as weather forecasts and simulation in news media or maps on web pages make use of cartographic animations. Such animations communicate complex and mostly time-dependent information in an accessible way, i.e. if such information is conveyed in a natural way, it can be accessed intuitively by any recipient. In order to allow this complex data analyses and representations are needed. To combine spatial information with non-spatial attributes and temporal characteristics and, finally, in order to relate them to other entities GIS technology is frequently used but it requires to be set up individually for specific use cases and implementations to allow for temporal visualization. In conventional GIS all pieces of information are stored as attribute values in relations. As long as temporal information is not readily supported in the same way as spatial information, workarounds need to be designed to store the temporal dimension within standard relational data models.

By making use of a time–attribute cube it is possible to visualize all combinations of point features which represent changes of objects and processes. That concept serves as basis for a GIS–based data structure that directly integrates temporal character of objects within a data model, and allows cartographic animations of map features.

Storing and accessing time–attribute data is straightforward and can be accomplished in any relational data model. However, issues of accessing such information and making use of them for map animation need to be addressed by the GI system backend which cannot be solved on an abstract level. A number of question remain:

  • How can values for colour, size and rotation be stored in such a way that different GIS implementations can access them for map animation?

  • What are the advantages and disadvantages of combining graphical information within a data model and how could this implementation be accomplished?

  • How can the concept and the proposed conceptual level of a data model be connected to a dynamic and web-based mapping service?

  • Is there a way for generating, storing and visualizing animations via moving paths or via automatic interpolation?

These are just few questions concerned with the topic of implementing cartographic animations. Integration of time (as dimension) in GIS significantly increases the complexity of any data model and by that usability can easily be limited. For the time being it seems therefore straightforward to focus on specific (concrete) problems in temporal design to allow future review of different approaches and to find a common abstract formalism.

Next steps in our approach will be to establish a full abstract formalism on which the concept is built, provide use cases and present a data model implementation (physical model) which may be accessed and adapted for other use cases.