We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

mapmap.js - Ein kartographisches API für interaktive thematische Karten

Formal Metadata

Title
mapmap.js - Ein kartographisches API für interaktive thematische Karten
Title of Series
Number of Parts
56
Author
License
CC Attribution 4.0 International:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language
Production PlaceSalzburg

Content Metadata

Subject Area
Genre
Abstract
Beim Programmieren von Web-Karten bewegt man sich derzeit zwischen zwei Polen: entweder mittels "Slippy Map" APIs wie z.B. Leaflet eine Hintergrundkarte aus Bildkacheln laden, oder mittels low-level Visualisierungswerkzeugen wie D3.js komplett dynamische, vektorbasierte Karten und Diagrammdarstellungen im Browser erstellen. Im ersten Fall sind der Interaktion mit den Karteninhalten Grenzen gesetzt, da nicht alle Karteninhalte als geometrische Objekte verfügbar sind, im zweiten Fall ist selbst für vergleichsweise einfache Kartendarstellungen umfangreicher und komplexerer Code notwendig. Das an der TU Wien entwickelte API mapmap.js versucht den kartographischen Visualisierungsprozess in seiner Gesamtheit in einem high-level JavaScript API abzubilden, wobei jeder Teilaspekt zunächst „einfach funktioniert“, aber bei Bedarf im Detail an die Notwendigkeiten der jeweiligen Anwendung angepasst werden kann. Die kartographische Visualisierungspipeline – vom Laden und Zusammenführen von Daten, Metadaten und Geometrie, über Projektion, Geometriemodifikation und Generalisierung, dem Zuweisen graphischer Repräsentationen und visueller Attribute bis zur Spezifikation von User-Interaktion – ist dabei im API abgebildet und erlaubt die Erstellung von interaktiven Karten mit etablierten Techniken in wenigen Zeilen, aber auch die Anpassung jeden Schrittes der Visualisierungspipeline im Detail und somit die Entwicklung völlig neuer kartographischer und hybrider Visualisierungstechniken. Dabei werden komplexe technische Details vom API abstrahiert, um im Code den kartographischen Prozess klarer werden zu lassen – Beispielsweise wird das asynchrone Laden von mehreren Ressourcen mittels Promises so implementiert, das ein sequentieller Programmierstil ohne Callbacks angewendet werden kann, oder per MapReduce-Modell das Filtern und Zusammenführen von Geometrie und Daten in modularer Weise unterstützt. Einige Case Studies zeigen den Einsatz von mapmap.js in der Praxis, u.a. im kürzlich veröffentlichten „genderATlas“ für Österreich, und runden den Vortrag ab.