Tilemill-Tutorial – Karten stylen mit „CSS“

Nachdem im ersten Schritt das Shapefile mit den entsprechenden Daten verknüpft wurde lädt man dann das Shapefile in Tilemill.

Dazu muss man zunächst ein neues Projekt anlegen und dem Kind einen Namen geben. Außerdem empfiehlt es sich imho meist, das Häkchen bei „include world layer…“ zu entfernen, da man meist ja mit eigenen Shapefiles arbeitet und die Weltkarte im Hintergrund im besten Fall überflüssig ist und sonst eher irritierend ist. Weitere Angaben wie „Description“ sind optional und erstmal nicht notwendig.

Ist das Projekt angelegt, landet man auf der Projektübersicht, klickt nun auf sein neues Projekt und landet auf einer großen blauen Wand.

Unten links befinden sich mehrere Icons nämlich (aufsteigend) „Layer“, „Carto“, „Fonts“ und „Templates“.  Während „Carto“ und „Fonts“ nur eine lesenswerte Referenz sind, benötigt man insbesondere „Layer“ um überhaupt sein Shapefile einzubauen, während „Templates“ dann für das Styling von Tooltips und Legende der Karte verantwortlich ist.

Shapefile einfügen

Unter Layer (links unten) findet man den Eintrag „Add layer“. Öffnet man diesen kann man unter „Datasource“ im Dateiverzeichnis seines Rechners das gewünschte Shapefile in Tilemile hochladen. Weitere Angaben sind eigentlich nicht notwendig. Arbeitet man allerdings mit deutschen/nicht-englischen Daten, gibt es manchmal Darstellungsprobleme mit Umlauten und Sonderzeichen. In diesem Fall kann man unter „Advanced“ noch einen Eintrag vorzunehmen und zwar in dem man den Zeichensatz von UTF auf LATIN1 setzt. Dazu bei „Advanced“ encoding="LATIN1" einfügen.

Nun wird auf dem blauen Bildschirm oft noch nicht viel zu sehen sein, da man erst noch etwas reinzoomen muss (oben links sind die entsprechenden Buttons).

Rechts ist das Fenster mit Carto, einer Art CSS, der Auszeichnungssprache von Tilemill zu finden. Hier werden all die Angeben eingetragen, die für das Äußere der Karte verantwortlich sind.
Map {background-color: white;}

Dieses Code-Schnipsel beispielsweise legt den Seitenhintergrund der Karte auf weiß (white) fest. Hier können Farben natürlich auch in HEX-Daten angebeben werden (#fff z.B. für weiß).Tilemill Formatierung

Um nun einzelnen Werten wie in diesem Beispiel eine bestimmte Farbe zuzuordnen muss man mit „bedingten Formatierungen“ arbeiten. Dazu im Menu „Layers“ in der Datentabelle nach dem Spaltennamen mit den entsprechenden Daten suchen und mit den entsprechenden Bedingungen (größer/kleiner etc.) formatieren.
[WAHLKREISG >= -50000] { polygon-fill:#FEE6CE; }

Sehr praktisch ist, dass auch Tooltip, Legende und Klickverhalten mit Hilfe von Platzhalter in 3-fach geschweifter Klammer gestaltet werden können. Diese Platzhalter stammen ebenfalls aus der Datentabelle und werden dann live mit den entsprechenden Daten gefüllt.

Mit diesem Eintrag im Reiter „Teaser“ würde der Tooltip dann den Wahlkreisnamen und das zugehörige Bundesland angeben.

Im Wahlkreis {{{WKR_NAME}} in {{{LAND_NAME}}} gibt es {{{WAHLBERECH}}} Wahlberechtigte.

tabelle

Hat man noch eine Spalte mit der Webadresse namens „URL“, dann könnte man unter „Location“ das Klickverhalten mit {{{URL}}} festlegen. Hier im Beispiel aber nicht umgesetzt.

Veröffentlicht in Datenjournalismus | Getaggt , , , , , | Hinterlassen Sie einen Kommentar

Datenkarten mit QGIS & Tilemill erstellen

Datenjournalismus ist mittlerweile ein rechter Hype geworden in der deutschen Medienlandschaft. Nachdem ich in der Vergangenheit viel dazu gelesen habe wird es mal Zeit sich mit der praktischen Seite ein wenig auseinanderzusetzen. Dazu habe ich mich dem bescheidenen Ziel „Arbeitsmarktdaten für BaWü“ beschäftigt. Was dabei raus kam seht ihr hier als Screenshot oder dort als dynamische Grafik.

Tilemill Beispiel

Die verwendete Software für die Visualisierung ist Tilemill, in der Vorbereitung dazu aber auch noch QGIS und Libre Office.

Tilemill ist ein Open Source-Projekt von Mapbox.com mit dem sich schicke Karten für Online-Projekte erstellen lassen. Es dient u.a. dazu vorhandene Shapefiles aufzuhübschen, in dem man verschiedene Ebenen ein/ausblendet, Elemente koloriert oder mit Legenden versieht.

Wie so oft verspricht die Software sehr schick und nützlich zu sein, aber ehe man damit richtig loslegen kann muss man sich durch die englische Dokumentation und manches ausführliche & gute Tutorial durchwühlen, bis man dann zu den ersten Erfolgen kommt.

Daher im ersten Teil zunächst einmal mein Weg zu einem geeigneten Shapefile mit den gewünschten Daten (in meinem Beispiel Arbeitsmarktdaten) zu kommen. In Teil II werde ich dann mit den eigentlichen Arbeiten in Tilemill weiter machen.

QGIS – Shapefiles editieren und verpacken

Daten aus den deutschen Amtsstuben kommen selten mit entsprechenden Geodaten daher. Shapefiles werden immerhin allmählich zugänglich und können bei den Statistischen/Geografischen Ämtern herunter geladen werden.  Die Daten selbst stecken immer öfter in Excel- oder CSV-Files und nutzen als geografische Referenz in der Regel den Gemeindeschlüssel. Mit Hilfe dieses Schlüssels lassen sich dann die Daten aus dem Excel-File auf die geographischen Angaben des Shapefiles mappen. Dazu benutzt man am besten das Tool Quantum GIS (QGIS) und lässt sich von den zahllosen bunten Buttons und Möglichkeiten des zweifelsohne sehr mächtigen Programms nicht erschrecken, sondern folgt im wesentlichen dieser Anleitung:

  1. Man erstellt mit Hilfe von Open Office/Libre Office oder einem anderen Tabellenverarbeitungsprogramm eine dbf-Datei, die die Spalten Gemeindeschlüssel und Quote (und in meinem Fall zur besseren Lesbarkeit auch noch den Namen der geografischen Einheit) enthält.
  2. In QGIS öffnet man zunächst eine Layer („Vektorlayer hinzufügen“) mit dem Shapefile. Dann eine weitere mit den dBase-Daten in der dbf-Datei.
  3. Nun schaut man in QGIS in der Attributstabelle (Rechtsklick im Layer-Bedienfeld auf das Shapefile) wie die dortige Spalte mit dem Gemeindeschlüssel heißt (in meinem Fall „SCHLUESSEL“).

QGIS

  1. Mit einem Doppelklick auf den Namen des Shapefiles (oder Rechtsklick–>Eigenschaften)  gelangt man in die Layereigenschaften und im Reiter Verknüpfung findet dann das Mapping statt.
  2. VektorverknüpfungLayer ist die Daten-Layer (dbf-Datei), das Verknüpfungsfeld ist der Spaltenname in der dbf-Datei, mit dem gemappt werden soll (hier „GEMEINDESC“ und das Zielfeld ist der Spaltenname im Shapefile, hier also „Schluessel“. Achtung! Der Gemeindeschlüsssel muss in der dbf-Datei exakt gleich lauten wie im Shapefile, also auch mit führender Null bzw. eben ohne!
  3. Nun kann man mit Rechtsklick auf den Namen der Shapedatei das neu erstellte Shapefile abspeichern.
Veröffentlicht in Datenjournalismus | Getaggt , , , , | 1 Kommentar

TT-RSS – Eine Alternative zum Google-Reader

Schon vor einiger Zeit begann Google am Google Reader Änderungen vorzunehmen, die auf eine „bessere“ Integration in Google+ abzielten. Diese „Verbesserungen“ ruinierten allerdings meine Workflows und so wurde es Zeit sich nach einer Alternative für den Google Reader umzuschauen. Mit der jüngsten Entscheidung von Google den Google Reader ganz einzustellen werde ich nur darin bestätigt, mich privat nicht zu sehr von solchen kostenlosen Angeboten abhängig zu machen.
Aus professioneller Sicht war es von Beginn an keine gute Idee sich auf den Google Reader zu verlassen, da man keinerlei Garantien in Sachen Erreichbarkeit, Funktionalität und Fortbestand hat.

Ich habe mich nach Alternativen umgeschaut und dabei einige klare Anforderungen gehabt:

  • Web-basierter Feedreader (ein vollständiges Abrufen der Feeds ist unabdingbar, eine Desktoplösung garantiert das uU nicht).
  • Es sollte auf einem eigenen Server liegen und möglichst Open Source sein, um Anpassungen (Layout, PDF-Export, Fullfeed usw) und Anbindungen an andere Tools/Plattformen zu ermöglichen.
  • Yahoo Pipes zur Filterung und Bearbeitung von RSS-Feeds (wie ich sie hier ja auch nutze) sind sehr praktisch, aber ebenfalls jederzeit vom Verschwinden bedroht, daher wäre eine  Filtermöglichkeiten wünschenswert.

Dabei bin ich auf TT-RSS (Tiny tiny RSS) gestoßen. TT-RSS ist ein web-basierter Open-Source RSS-Reader und RSS-Aggregator. Ein großes Plus gegenüber vielen anderen Google Reader Alternativen ist, dass er immer noch weiter entwickelt wird. Einschränkend für manchen Programmierer mag sein, dass der Entwickler des TTRSS in der Zusammenarbeit anscheinend ein wenig eigenwillig ist…

Das Layout mutet zwar etwas veraltet an, doch der Funktionsumfang ist richtig gut. Insbesondere die Filtermöglichkeiten, Veröffentlichungs-/Sharing-Funktionen und Ordnungsfunktionen sind sehr nützlich.

TT-RSS Filter
Beispiel Filter-Möglichkeiten im Tiny Tiny RSS-Reader

Die Handhabung des einmal installierten Readers ähnelt als User sehr dem Google Reader, man liest, bewertet, tagged und leitet Artikel aus den abonnierten Feeds weiter.

Mittlerweile läuft das Tool seit über einem Jahr auf meinem Server und auch mehr als 100 Feeds und mehrere 100 000 Einträge haben ihn nicht in die Knie gezwungen.

Eine gute Anleitung zur Installation von TT-RSS findet sich bei Alles.it. Einige wichtige Hinweise und Tipps zur Installation finden sich auch bei der Brasserie Seul (engl.).

NACHTRAG (04.04.2013): Mittlerweile gibt es dank Googles Ankündigung weitere gute Anleitungen zum Installieren und Arbeiten mit TT-RSS. Mit das beste und Ausführlichste, das ich gefunden habe hat Michael Sonntag zu bieten.

Screenshot TT-RSS
Screenshot des Tiny Tiny RSS-Readers

Fazit

Man sollte sich nicht von zweifelsohne tollen kostenlosen Tools zu abhängig machen, sonst kann einem die Grundlage für das tägliche Arbeiten schnell unter den Füßen weggezogen werden.

Der Tiny Tiny Reader (TT-RSS) ist für mich bislang eine sehr gute Alternative zum Google Reader, auch wenn er etwas mehr technisches Knowhow voraussetzt um ihn selbst aufzusetzen.

Mit Newsblur scheint es ebenfalls noch eine interessante Alternative zum Google Reader bzw. zu TT-RSS zu geben, mit der ich mich bislang allerdings noch nicht weiter auseinandergesetzt habe. Aber das werde ich dann mal demnächst nachholen. Dazu dann gegebenenfalls mehr.

Es gibt keinen Grund in Panik auszubrechen, wenn Google im Juli den Google Reader abschaltet. Mit OPML bietet derGoogle-Reader ja eine standardisierte Exportmöglichkeit an, die eigentlich alle anderen RSS-Reader auch wieder problemlos importieren können. Ein Transfer der Google-Daten in eine neue Anwendung sollte also kein Problem sein. Solche Alternativen gibt es zuhauf (Tool-Sammlung von Paul Bradshaw), die alle manches besser machen und manches sicher auch schlechter.

Veröffentlicht in Tools | Getaggt , , , , | 2 Kommentare