Keywords

1 Introduction

Numerous map services can be found online, many of them capable of varying their legends or content to a certain extent (e.g., Google Maps , OpenStreetMap , Yandex Maps, ArcGIS Online, MapQuest, etc.). Most of these services have a fixed map key, and additional information (e.g., traffic, hotels, etc.) can be displayed optionally. OpenStreetMap has map layouts that can be changed based on the required map theme. Swisstopo uses ESRI ArcGIS, enterprise GIS software, to create and display the Swiss topographic maps online. They have rules to create proper cartographic representation. They also use multi-level generalization (model and cartographic generalization) to create a cartographic model for a certain scale band (Neuffer et al. 2006).

Studies found that experience can affect map reading (e.g., Guzmán et al. 2008; Ooms et al. 2013). These studies show that unexperienced map users require more time and effort to understand maps (Ooms et al. 2012). Also, experienced map users have multiple advantages at map reading tasks, for instance in interpreting contour lines (Gilhooly et al. 1988), in symbol knowledge (Guzmán et al. 2008) and other competences such as mental rotation and distance estimation (Albert et al. 2016). During navigational tasks, map reading is also affected by the map reader’s gender (Lawton 1994), cultural background (Ito and Sano 2011), cognitive skills and memory (Petchenik 1977; Montello 2002; Guzmán et al. 2008; Murakoshi and Higashi 2016). However, according to the Cognitive Load Theory (CLT) (Sweller 1994; Paas and Merrienboer 2003), the cognitive load capacity of the memory is limited; experienced map readers store information about maps they read earlier in their long-term memories, which can be later retrieved.

It is necessary for cartographers to create maps that not only meet the needs of map readers, but also fit their level of knowledge and skills (Kolácný 1969). By creating individualized maps according to the map readers’ skills, we can reduce the map readers’ cognitive load. To achieve this, it is important to generalize the number of topographic elements in the maps for users with less experience, and to create a proper map design without visual clutter or ambiguity (Bunch and Lloyd 2006). Creating different maps for each individual person is not yet possible at the present technical level, but by defining map reader groups with similar competencies (Clarke 2003; Albert et al. 2016) it is possible to enhance map reading efficiency with specialized maps. Map readers in user studies are differentiated into categories based on their map reading experience. Making two groups (e.g., Deeb et al. 2012; Ooms et al. 2015), novices and experts is usual if the number of participants is below 100. Three groups (e.g., Gerber 1981; Clarke 2003; Albert et al. 2016), beginners, intermediates and experts, are recommended if the study achieved statistically sufficient data.

The Research Group for Experimental Cartography (RGEC) at Eötvös Loránd University, Budapest, prepared maps to fit to the users’ map reading skills and tests the effectiveness of information retrieval from the maps by the subjects. In earlier RGEC studies (Szigeti and Albert 2015; Albert et al. 2016), the map reading skills were measured, and patterns were found amongst different map reader groups regarding four map data categories: hypsography, geographic names, point-like symbols and topography. The topography category can be further divided into natural or artificial linear and areal feature types (Albert 2014; Szigeti and Albert 2015). These categories are also in accordance with the data layer structure, e.g., in digital topographic maps (McEwen and Jacknow 1979; Usery et al. 2009). It was also shown that if the cognitive skills of the map readers are tested with very simple maps displaying only one or two map data categories, the statistical analysis of the results yields a numeric value representing the difficulty level of that category for the actual map reader (Albert et al. 2016).

Based on the results of these experiments, the present paper focuses on the technical and theoretical details of creating online maps with dynamically changing cartographic images, where the factor of change is the skill of the map reader. The maps were applied for user testing research concerning their usability . The details and results can be found later in this volume (see Albert et al. 2017).

2 Data Sources

The maps were created from OpenStreetMap (OSM) and SRTM data. The selected test area is located near Pécs, a city in Hungary, because it contains various types of map objects: multiple road types, different types of coverage (dense city, villages, forests, fields, vineyards), and it also has a diverse relief with both mountains and plains (Fig. 1). The map data was downloaded in .osm format using QGIS 2.14.0 Essen (open source GIS software) because, in this way, the exact size of the required area could be specified in advance. The raw .osm file (map database) was separated into four geometry types: lines, multilines, points and polygons. The contour lines and relief shading were generated from SRTM data with 3 arc seconds resolution.

Fig. 1
figure 1

The test area near Pécs, Hungary, containing various map objects

The cartographic images of the maps change dynamically with the zoom level. At larger zoom (or larger scale) the maps represented city maps in built-up areas and tourist maps on rural areas, while at smaller zoom level (smaller scale) they were similar to road maps. The zoom levels are based on the OSM standards (OpenStreetMap Wiki 2016b), although they were modified to have more details (Table 1).

Table 1 The nine original OSM zoom levels (left), and the more detailed 12-grade zoom levels of the created dynamic maps (right)

3 Processing the OpenStreetMap Data

The raw map data was styled and generalized in three different ways to adequately fit them to the map reading skills of the map readers. This can be achieved only if the data is separated into categories (Table 2) and distinguished as separate layers according to the four different geometry types of the OSM data (points, lines, multilines, polygons) (OpenStreetMap Wiki 2016a) using the wtk_geom attribute (Fig. 2). The point type objects are categorized into 25 QGIS style labels by using the other_tags, highway and man_made attributes (keys) in the OSM’s XML database. Each label represents an individual object. The man_made attribute contains artificial structures (OpenStreetMap Wiki 2016d). The highway attribute is mainly used to identify roads, streets and paths, but it also contains point objects such as bus stops, roundabouts or stop signs (OpenStreetMap Wiki 2016c).

Table 2 The relationship between the map data categories and the data layers created from the OSM database
Fig. 2
figure 2

The labels of object types created in QGIS from the OSM database

Every attribute that is not strictly identified by OSM is appended to the other_tags field (GDAL n.d.). These attributes contained multiple information about one single object, though most of the information was irrelevant from the cartographic aspect, it had to be processed with multiple filtering functions to extract relevant data concerning the defined categories (Fig. 2). The names of peaks and railway stations as well as the names of cities, city quarters and villages were point objects. The created maps inherited this original property even if the object was rather a area (e.g., village) and not a point. The major part of the geographic name content of the maps came from the labels of the point objects.

The multiline type objects (polylines, with graphic symbols on them) contained information about the tourist trails (29 labels). As in the case of points, relevant information was found in the other_tags attribute, which had to be data-mined. The linear objects were distinguished by the highway attribute for roads, the waterway attribute for streams and the other_tag attribute for railways. The simple line type objects were separated into two layers to create a proper hierarchy with the multiline objects during rendering the cartographic image: paved roads and railways (14 labels) were below the multilines, while dirt roads (2 labels) were above them. In this way, the symbols of the trails did not cover any road symbols.

The symbols for tourist trails were imported into QGIS in SVG format. Because the trails were multilines, we had to display the symbols as label backgrounds (an option in QGIS to provide a graphic object as a background for the label). It was also necessary to set the option of merging the connected lines to avoid duplicate labels. The map also contained street names, and the road numbers of highways, primary and secondary roads. Since the numbering in the .osm file did not follow the Hungarian road numbering hierarchy consistently, we had to apply regex patterns for the correct labelling.

Regarding the polygon type objects, the QGIS OSM download plugin had trouble downloading too complex multipolygons (polygons with polygon inclusions). This was fixed using Overpass Turbo, which is an online OSM download tool. After solving this problem, the map objects were differentiated using the landuse, along with the amenity, barrier, sport, leisure, historic and natural attributes. The geographic names of hills and mountains are also stored as attributes of multipolygons in the OSM database.

The relief shading was generated from SRTM 3 arc second data. Since the test area is relatively small, its resampling method was set to cubic from the nearest neighbour, and the blending mode was set to multiply in order to get smoother visualization. It had 50% transparency in the cartographic image. Contour lines with 5 m intervals were also generated from SRTM.

All the .osm files were converted into shapefiles because this is the supported format in QGIS, and the shaded relief was saved as a GeoTIFF file.

4 Creating Different Cartographic Images

We used the categorized map database to provide base maps with different graphic styles in the study involving several hundred participants. An online test preceded the visualization of the cartographic images presented here and divided the subjects into three groups: experts, intermediates and beginners. After the test, the categorized map data was displayed through a web server. The symbol design was based on the results of earlier studies on the differences of map reading competences: interpretation of hypsography, orientation skills, distance and travel time estimation, interpretation of map symbols, interpretation of geographic names and interpretation of topographic objects (Muir 1985; Clarke 2003; Albert et al. 2016).

We also created 12 zoom intervals where the map legends change dynamically (Table 1). These zoom intervals (or scale levels) define the visibility, graphical style and generalization of each map object. On the test area, the scale varied between 1:250,000 and 1:1,000.

Ultimately, the categorized map data was modified according to graphic variables, defined originally by Bertin (1967). These are colour, pattern, value, size (thickness), position, shape and direction. Modification of a symbol was justified only if significant difference in the interpretation of the given map data type was documented amongst the groups of map readers. In the case of such differences, one or two variables were modified. It was expected that the emphasized symbols would help the map readers to solve map-related tasks.

Albert et al. (2016) found that the interpretation of the linear objects was a difficult task for all map reader groups. For this reason, we increased the legibility of the linear objects, especially the roads, with distinctive colours and line widths for each road type. It was also shown that the beginners make five times as many mistakes on road-related map reading tasks as the experts. To decrease the cognitive load on less skilled map readers, the roads were generalized using “refinement” (McMaster and Shea 1992) on small scale maps. Maps for beginners were generalized the most while maps for experts were generalized the least (Table 3). Practically, it meant that lines shorter than a certain length were not displayed, but this value varied according to the zoom level and the object type. Other automatic generalization methods, for instance, simplification or smoothing (Li 2007), are difficult to use in QGIS and, in some cases, the topology is lost (Stackexchange 2016a, b) or gives a visually unappealing result.

Table 3 An example of the different extensity of generalization on the three maps. The beginners’ map was the most, and the experts’ map was the least, generalized

A quite similar approach was used during the styling and generalization of the polygons but here the pattern was modified along with the size. Below a certain area they were not displayed, and their value varied according to the scale level and map object (Table 3). Allen et al. (2006) showed that previous experience of symbols influences comprehension, thus helps the working memory in map reading tasks. Because of this, the patterns were designed to represent familiar shapes like a tree, a grape, or a grape vine (Fig. 3).

Fig. 3
figure 3

The difference in the design of polygons in the individualized maps (from top: beginner, intermediate, expert). Differences can be seen in the forest and vineyard symbols

On larger scales (>1:75,000), the tree symbols in the forest polygons were detailed in the maps for beginners but more schematic in the map for intermediates. However, as in the case of Hungarian tourist and topographic maps, there were no tree-patterned polygons in the map for experts (Fig. 3) because experts are accustomed to this symbology.

The vineyards in the maps of intermediates and experts were represented by the conventional grape vine symbol. However, we used a schematic grape symbol in the beginners’ map (Fig. 3). These figures were imported into QGIS as SVG files.

Intermediate and beginner map readers had difficulties in interpreting hypsography (Eley 1992; Wakabayashi 2013). Thus, to emphasize the plasticity of the terrain, their maps had fewer contour lines and less hill shading, while the experts’ map had only dense contours. Also, on the beginners’ map, we added the measurement unit (m) to the values of the contour lines for better comprehension (Fig. 4).

Fig. 4
figure 4

Differences in the design of hypsography (left) and symbols (right) in the individualized maps (from top: beginner, intermediate, expert)

The point objects were categorized into five conceptual groups, four of them having different colour-codes: public transportation (blue), landmarks (orange), services (green), cultural sights (purple) and other topographic elements, and further 28 label types.

The point type objects appeared on the maps between scale levels 1:70,000 and 1:1,000. The rules of the appearance were similar to the ones in OSM (Tables 1 and 3). A previous study of the RGEC (Albert et al. 2016) showed that most of the weekly map users were experts, monthly users were mainly intermediate, while 45% of the map readers, who only use maps a few times a year, were beginners. This means that experts and intermediates have more experience with conventional map symbols. It was also shown by Easterby and Hakiel (1981) that a symbol is comprehended more easily if it has descriptive details. Thus, the symbols on the experts’ and intermediates’ maps were simple pictograms commonly used in tourist maps, while for beginners they were more detailed and descriptive for easier comprehension, and had a coloured background (the colour followed the conceptual groups’ colour-code). The symbols in this map were also bigger in size to apprehend them more easily (Fig. 4). The symbols were imported into QGIS as separate SVG files.

Sans-serif was preferred by all map reader groups according to Deeb et al. (2012). It was also shown that novice users were more tolerant to differences in shape and texture. The names of cities, villages, districts had the same fonts, but different typefaces (e.g., bold, semi-bold) and sizes, and they also appeared at different zoom levels. The hypsographic names’ style varied in the three maps: while the names in the beginners’ and intermediates’ maps had a brown colour, the names in the experts’ map were black to increase their legibility due to the larger number of contour lines.

5 Setting Up Maps Online

The maps were displayed by using QGIS Server on the server side and a JavaScript library called OpenLayers on the client side (web page). The QGIS server is capable of using maps created with the QGIS desktop application. The server contains the map data and can respond to HTTP queries by creating rasterized maps on the fly. The HTTP query is created on the client side in QGIS’s own syntax and can specify location, zoom level, legend, etc. To provide such queries, interactive elements on the webpage were supported by a JavaScript library called OpenLayers on the client-side.

OpenLayers is a tool for displaying easy-to-use interactive maps, which is more or less capable of handling all user inputs and queries on its own. Many widely-used features, such as scroll-to-zoom are supported by the JS library. OpenLayers processes these inputs and sends corresponding HTTP queries via asynchronous communication to the server, which in turn sends the corresponding rasterized maps back to the client. The map then appears on the client computer as an HTML element. To decide whether a user is beginner/intermediate/expert, a numeric value was also applied as input data for the server.

The basic elements used on the website are readily implemented in OpenLayers , leaving only a few specific features and/or extensions to be developed by us in JavaScript . By using QGIS Server, it was possible to transfer the QGIS project files from the desktop version without any conversion. In this way, the different styles, and imported SVG files, were displayed similarly on the web page and the desktop.

6 Discussion

The overall task to create dynamically changing cartographic images via web servers was achieved using only free and open source tools and data. However, tasks like this have their own limitations. Downloading, and working with the .osm format in QGIS is not always evident, although there are alternative ways to downloading OSM data, for instance, geofabrik.de, that provides OSM data of countries in both .osm and .shp format. If the problems of data download and conversion are tackled, it is important to process the raw data’s attribute table, and create the proper queries in QGIS to distinguish the features required for the map.

The data in the .osm file’s attribute table may not be consistent with the national data (e.g.,, road numbering). To fix this, it may be necessary to edit the data, or use regular expressions to properly filter information. In the present study, we aimed to work out automatic methods for this (e.g., filtering and categorizing osm data), but working with a certain pilot area requires more modest hardware and software capacity than working with global scale data, which is the logical ultimate aim.

In terms of creating different designs suited for the skills of map readers, QGIS seemed to be a proper decision. Because custom created SVGs can be imported into QGIS, a large variety of symbols and polygon fills can be applied to the maps. Lines could also be styled well due to the multiple symbol layers (multilines) that can be created.

On the other hand, it was difficult to generalize the maps in QGIS. The simplest way of generalizing the maps for the three map reader groups was applying refinement as a generalization method. In this case, we only selected objects the length/area of which (depending on the object type) were above a certain value.

The testing method to allocate map variations for the user groups is suitable for detecting further differences among the subjects (i.e., gender, age, education). For more details about our testing method and the results of our user study based on the maps of this research, see Albert et al. (2017) (in this book). By creating map style variations according to these variables and relying only on open source tools, it is possible to provide the readers with true individualized maps of the same area having different map legends based on the map readers’ skills.