Visualisierung des Todes
Abweichung vom Durchschnitt in Baden-Württemberg

Visualisierung des Todes

Wer in Mannheim lebt stirbt früher - Mannheim24

Untersucht wurde die von Mannheim24 behauptete These “Wer in Mannheim lebt stirbt früher”. Wir zeigen an Hand verschiedener Vergleiche der Lebenserwartung in den Stadt- und Landkreisen Baden-Württembergs, dass diese These begründet ist. Auch werden mögliche Erklärungen für die Unterschiede in der Lebenserwartung aufgezeigt, indem verschiedene Faktoren, wie zum Beispiel Industrieansiedlungen beleuchtet werden. Die Daten für die Untersuchungen stammen aus offiziellen Internetangeboten von Landes- sowie Bundesbehörden, erfüllen auch somit wissenschaftliche Standards. Die von uns hergestellten Zusammenhänge sind jedoch nicht wissenschaftlich fundiert.

Einführung / Konzept

Im Rahmen der Vorlesungsveranstaltung “Grundlagen der Datenvisualisierung” wurde durch den Professor ein Projekt initiiert, indem die Studierenden Verhalten zu dem Thema “Urbanität und Smart Cities” untersuchen sollten. Die Tätigkeiten der Studierenden beginnen bei der Datenrecherche, gehen über die Datenaufbereitung und Konvertierung bis hin zum Implementieren einer geeigneten Visualisierung mittels ausgesuchter und begründeter Technologien. Bei der Wahl der zu untersuchenden urbanen Räume, lagen folgende Einschränkungen vor:

  • Hohe Bevölkerungszahl ( > 250.000 Einwohner)
  • Aus dem Raum der Europäischen Union

Aufgrund der Aufgabenstellung und der Einschränkungen fiel die Wahl auf die Stadt Mannheim (~308.000 Einwohne), mit dem Gedanken diese Stadt mit anderen Land- und Stadtkreisen zu vergleichen. Für die zum Vergleich herangezogenen Städte bestanden dabei keine Einschränkungen. Unser Hauptfokus lag auf der Extrapolation und Interpolation der aus dem Kondens der Untersuchung gewonnen Information.

Wir wollten feststellen, ob Mannheim tatsächlich die geringste Lebenserwartung in Baden-Württemberg aufweist und ermitteln, wie groß die Unterschiede zwischen Mannheim und den anderen Kreisen ausfallen. Ebenfalls wollten wir herausfinden, woran die Mannheimer sterben, unsere Hypothese war, dass dies durch die hohe Industriedichte und schlechter Luft begründet sei. Zur Ermittlung der Ursachen für die Unterschiede unter den Kreisen haben wir uns die Hintergründe der jährlichen Todesfälle in Mannheim und ausgewählten Kreisen angesehen, in der Erwartung einen hohen Anteil an Atemwegserkrankungen als Todesursache vorzufinden. Diese Erkenntnisse wollten wir der Luftverschmutzung gegenüberstellen, leider empfanden wir die Daten, die wir zur Luftverschmutzung vorgefunden haben, als nicht ausreichend verwendbar für den Vergleich. Mehr dazu im nächsten Kapitel.

Daten / Experimente

In diesem Kapitel benennen wir unsere Quellen, ebenfalls begründen wir diese. Im Weiteren werden Probleme bezüglich der Datenaufbereitung/Konvertierung benannt. Zuletzt werden Ergebnisse unserer explorativen Datenanalyse präsentiert.

Daten

Bei der Recherche der Daten haben wir eine Menge an Informationsquellen gefunden. Zu diesen Quellen gehören u.a. Zeitungsartikel, Veröffentlichungen von statistischen Ämtern, Wikipedia-Einträge, Gemeindewebsites, Karten & Pläne. Zunächst wurden Zeitungsartikel gesichtet, um einen Einstieg in das Thema zu finden. Es stellte sich heraus, dass die Informationen in diesen Zeitungsartikeln umfangreich waren, jedoch oft nicht belegt wurden oder die Informationen stammen alle aus derselben Quelle: Statistisches Landesamt Baden-Württemberg. Natürlich bot es sich hier an direkt die Information aus der genannten Quelle zu beziehen um einen ungeleiteten Blick auf die Daten zu erhalten. Da die Information aus staatlicher Hand stammt, ist davon auszugehen, dass sie seriös ist. Des Weiteren lagen die Daten in einem gut verarbeitbaren Format vor (.csv).

Für die explorative Datenanalyse wurde das Programm Tableau von ‘Tableau Software’ verwendet. Das Programm bietet die Möglichkeit schnell Prototypen zu entwickeln, ein direktes importieren von CSV-Dateien ist möglich. Leider waren in den CSV-Dateien von dem Statistischen Landesamt Baden-Württemberg Überschriften, Fußnoten und Erläuterungen vorhanden, welche manuell entfernt werden mussten.

Ein Beispiel für die Bearbeitung von CSV-Dateien
Vor der BearbeitungNach der Bearbeitung
Ärztliche Versorgung insgesamt 2013–2014 Stadtkreis Mannheim Merkmal;20131);20142) Berufsausübende Ärzte insgesamt ;2.110;2.151 darunter in freier Praxis ;642;634 im Krankenhaus ;1.138;1.160 Behandelnd tätige Zahnärzte insgesamt ;531;530 darunter in freier Praxis ;396;394 Auf … Einwohner kamen am Jahresende ein Arzt ;141;139 ein Arzt in freier Praxis ;462;473 ein hauptamtlicher Krankenhausarzt ;261;258 ein behandelnd tätiger Zahnarzt ; .; . darunter in freier Praxis ; .; . 1) Ab dem Berichtsjahr 2009 werden von der Bezirkszahnärztekammer Karlsruhe der Stadtkreis Baden-Baden zusammen mit dem Landkreis Rastatt, der Stadtkreis mit dem Landkreis Karlsruhe sowie der Stadtkreis Pforzheim mit dem Enzkreis ausgewiesen. Der Rhein-Neckar-Kreis wird unter den Stadtkreisen Heidelberg und Mannheim sowie dem Landkreis Neckar-Odenwald nach Einzugsgebieten aufgeteilt. Stadtkreis und Landkreis Heilbronn werden zusammen ausgewiesen. In den Tabellen mit Bezug auf Einwohner sind diese Sachverhalte nicht berücksichtigt. 2) Die Regionaltabelle musste ab dem Berichtsjahr 2015 eingestellt werden. Die Zahl der Ärzte bzw. Zahnärzte steht seit 2015 nur für Kreise zur Verfügung, die räumlich mit Ärzteschaften bzw. Wahlkreisen identisch sind oder die sich aus diesen zusammenfassen lassen. Dadurch können zahlreiche Kreise gar nicht oder nur zusammengefasst mit anderen Kreisen ausgewiesen werden. Datenquelle: Bezirksärztekammern und Landeszahnärztekammer Baden-Württemberg. Berufsausübende Ärzte insgesamt ; darunter in freier Praxis ; im Krankenhaus ;Behandelnd tätige Zahnärzte insgesamt ; darunter in freier Praxis; ein Arzt ; ein Arzt in freier Praxis ;ein hauptamtlicher Krankenhausarzt ; 2151;634;1160;530;394;139;473;258;


Des Weiteren verwendeten wir in unserem Produkt Webtechnologien, welche JSON-Dateien benötigten. Deshalb wurde schnell eine kleine Anwendung entwickelt, welche die Daten für uns von .csv nach .json wandelt. Die Anwendung wurde speziell für jede CSV-Datei zugeschnitten, wobei jeder Zuschnitt nur minimaler Änderung bedurfte.

Ein Codebeispiel für die Konvertierung einer .csv zu einer .json.
#include <iostream>
#include <fstream>
#include <algorithm>
#include <sstream>

using namespace std;

int main()
{
    std::ifstream in("daten.csv", std::ios::in | std::ios::binary);
    std::ofstream out("daten.json", std::ios::out | std::ios::binary);
    std::string line;

    out.put('{');
    out.write("\"data\": [", sizeof("\"data\": [")-1);

    bool first_iteration = true;

    /* For each line */
    while(std::getline(in, line, '\n'))
    {
        /* Remove carriage return */
        line.erase(std::remove(line.begin(), line.end(), '\r'), line.end());
        line.erase(std::remove(line.begin(), line.end(), '"'), line.end());

        std::stringstream worker(line);
        std::string parameter[20];

        for (int i = 0; i < 20; i++)
        {
            std::getline(worker, parameter[i], ';');

            /* Replace ',' with '.' */
            std::replace( parameter[i].begin(), parameter[i].end(), ',', '.');
        }

        if (!first_iteration)
		{
			out.put(',');
			out.put('\n');
		}

        static std::string attr_labels[20] {"Todesursache", "Insgesamt", "0-1", "1-15", "15-20", "20-25",
        "25-30", "30-35", "35-40", "40-45", "45-50", "50-55", "55-60", "60-65", "65-70", "70-75", "75-80", "80-85", "85-90", ">=90"};

        out.put('{');
        for (int i = 0; i < 20; i++)
        {
            out.put('"');
            out.write(attr_labels[i].c_str(), attr_labels[i].length());
            out.put('"');
            out.put(':');

            out.put('"');
            out.write(parameter[i].c_str(), parameter[i].length());
            out.put('"');

            if (i != 2)
                out.put(',');
        }
        out.put('}');

        first_iteration = false;
    }

    out.put(']');
    out.put('}');

    return 0;
}

Experimente

Im Hinblick auf unsere These bezüglich der Luftverschmutzung haben wir eine Vergleichsdarstellung bezüglich verschiedener Luftschadstoffe(wie z.B. Schwefeldioxid, Feinstaub) angestrebt. Zuerst wurden dafür die Schwefeldioxidwerte verschiedener Städte im Vergleich abgebildet. Das Ergebnis schien unsere These zu unterstützen.

Schwefeldioxid Belastung im Vergleich (Daten von: Statistisches Landesamt Baden-Württemberg

Da unser Fokus im Projekt auf Mannheim lag, versuchten wir die Luftbelastung auf die einzelnen Stadtteile aufzulösen. Unsere Recherche zeigte jedoch ein überraschendes Ergebnis. In der Stadt Mannheim, gab es leider nur zwei öffentlich einsehbare Messstationen, welche durch staatliche Seite zur Verfügung gestellt wurden. Dies lässt zum einen eine Auflösung auf die einzelnen Stadtteile nicht zu und zum Anderen riefen die geringe Anzahl der Messstationen Zweifel an der Aussagekraft der Daten hervor. Dadurch, dass die Stadt Mannheim nur zwei Messsäulen zur Verfügung stellt, hat der Standort eine potentiell verzerrende Auswirkung auf die repräsentative Wirkung bezüglich der gesamten Stadt. Wir konnten nicht in Erfahrung bringen, ob die von dem Statistischen Landesamt Baden-Württemberg bereitgestellten Daten zur Luftverschmutzung nur auf diesen zwei genannten Stationen beruhen oder noch weitere nicht öffentlich einsehbare Messstationen mit in die Daten einwirken. Aufgrund dessen haben wir uns dazu entschlossen keine Visualisierung, zu dieser Thematik, in unserer Anwendung aufzunehmen. Trotz dieser missgünstigen Umstände haben wir uns entschieden den Ursachen des verfrühten Todes in der Stadt Mannheim weiter auf den Grund zu gehen.

Öffentlich einsehbar Messstationen im Raum der Stadt Mannheim (Quelle: https://www.lubw.baden-wuerttemberg.de/luft/messwerte-immissionswerte#karte)

Prototyp / Ergebnisse

In diesem Kapitel stellen wir unsere Wahl der Visualisierung vor, begründen sie und nennen Probleme, die wir dabei bemerkt hatten. Ebenfalls präsentieren wir unsere Erkenntnisse und gehen auf die Implementierung der Anwendung ein.

Visualisierung

Aus den Experimenten, die wir zuvor in Tableau durchgeführt haben, wurden nur einige Visualisierungen für die Umsetzung in der Software ausgewählt. Als äußerst wichtig wurde die Visualisierung befunden, welche die durchschnittliche Lebenserwartung in den Land- und Stadtkreisen darstellt, da sie unsere leitende provokative Aussage “Wer in Mannheim lebt stirbt früher!” betrifft. Durch die Nutzung dieser provokativen Aussage wollten wir beim Betrachter die Frage “Stimmt das überhaupt?” auslösen. Um das so gewonnene Interesse des Benutzers an unserer Anwendung zunächst nicht so gleich zu verlieren, bemühten wir uns den sich in den Daten zeigenden schlechten Stands Mannheims besonders eindrucksvoll hervorzuheben.

Mit 3,1 Jahren (~1.131 Tage) ist der Unterschied in der durchschnittlichen Lebenserwartung zwischen Mannheim, als Kreis mit der geringsten Lebenserwartung in ganz Baden-Württemberg, zum baden-württembergischen Spitzenreiter, dem Landkreis Breisgau-Hochschwarzwald, erheblich. Auf ein ganzes Menschenleben, von auch in Mannheim, immerhin über 79 Jahren, gesehen tritt diese Differenz jedoch nicht mehr so deutlich hervor. Daher wählten wir für die erste Visualisierung, die unsere Nutzer zu Gesicht bekommen sollten, eine Darstellung mit einer verschobenen Ordinate, sodass nur Jahre ab 79 (einschließlich) angezeigt werden.

Durchschnittliche Lebenserwartungen der einzelnen Kreise im Vergleich (mit verschobener Ordinate und ohne) im Prototyp
Durchschnittliche Lebenserwartungen der einzelnen Kreise im Vergleich (mit verschobener Ordinate und ohne) in der Anwendung

Taktisch wurde diese Visualisierung zuerst gezeigt, da wir weitere Visualisierungen im Hinterkopf hatten die auf diesen Daten aufbauen. Der Verdacht liegt nah, dass Betrachter des Projektes schnell das Interesse verlieren, weil diese Visualisierung die den Betrachter motivierende Frage, “Stimmt das überhaupt?”, bereits beantwortet. Deshalb haben wir uns entschlossen unsere Ergebnisse in einem sogenannten Story-Telling darzubieten. Strategie hierbei ist, nach Klärung einer Frage eine nächste Frage einzuleiten.

Beispiel für die Überleitung zur nächsten Visualisierung im Rahmen unseres Story Tellings

Da wir nach dem ersten Schockmoment, durch unsere Darstellung, mit verschobener Ordinate, uns die Aufmerksamkeit des Betrachters erstmal gesichert haben, haben wir uns für danach darum bemüht eine Darstellung zu finden, die sowohl die Erheblichkeit der Differenzen herausstellen kann, gleichzeitig aber nicht die Darstellung derart verzerrt wie die Verschiebung der Ordninate. Ein genaueres Betrachten des Deltas ist nun möglich. Außerdem wird herausgestellt, dass Mannheim auch zum Mittelwert der Lebenserwartung in Baden-Württemberg besonders abweicht.

Lebenserwartungsdifferenz zum Mittelwert Baden-Württembergs

Da in den letzten drei Visualisierungen diskrete Werte jeweils einem ordinalen Wert zugeordnet wurden, bot es sich an die Daten in einem Balkendiagramm darzustellen. Die Daten können so direkt intuitiv aufgegriffen werden.

Für Mannheim wurde die Farbe Rot gewählt, welche häufig mit negativen Werten assoziiert wird. Was dabei nicht bedacht wurde ist, dass nun die Farbe für Mannheim als Wiedererkennungswert in weiteren Visualisierungen verwendet werden musste. Glücklicherweise(für uns, leider aber nicht für die Mannheimer) hatte die Stadt Mannheim in jedem Vergleich tatsächlich die schlechtesten Werte. Für Heidelberg wurde die Farbe Blau verwendet, da diese für die Meisten neutral wirkt - für einige wirkt sie im Vergleich zu rot wie eine Freund/Feind Darstellung, was natürlich nicht gewollt ist. Eine von uns zuerst in den Blick gefasste Analogie zum Gegensatz von roten und Schwarzen Zahlen, wie man ihn aus der Wirtschaft kennt, war auf Grund der schwarzen Hintergrundfarbe nicht möglich. An der schwarzen Hintergrundfarbe wollten wir nicht rütteln, da schwarz einen äußerst augenfreundlichen Kontrast zu anderen Farben bietet.

Auf unserer Spurensuche haben wir die Todesursachen untersucht und letztendlich geeignete Visualisierungsformen durchprobiert. Zunächst hatten wir ein Balkendiagramm aber wir dachten uns, dass die Applikation noch etwas Abwechslung braucht, damit der Benutzer die Aufmerksamkeit nicht verliert. Als nächstes hatten wir versucht ein Packed-Bubble-Chart umzusetzen. Die von uns bisher benutzte Bibliothek, in der wir bereits Erfahrungen gesammelt hatten unterstützt diese Darstellungsform leider nicht, deshalb haben wir eine andere Bibliothek verwendet ( mehr dazu im Abschnitt ‘Implementierung’). Ein Bubble-Chart wurde ausgewählt, da durch die unterschiedlichen Blasengrößen die Differenzen in den verschiedenen Todesursachen besser ersichtlich waren. Die Variante des Packed-Bubble-Chart wurde gewählt um durch die Nähe der Bubbles zueinander dem Betrachter einen Vergleich zu erleichtern. Während unserer Versuche bei der Implementierung haben wir uns die Blasen ausblenden lassen, sodass nur noch die Wörter in ihren Größenausprägungen sichtbar waren. Somit war eine Wortwolke entstanden. Im Vergleich zu der Bubbledarstellung hat es sich ergeben, dass der Rückschluss über die Größenverhältnisse auf die Fallzahlen weiterhin gut möglich war und sich die Lesbarkeit der Kategorien deutlich verbessert hatte. Um die Lesbarkeit noch weiter zu verbessern wurden Texte bei Überflug mit dem Cursor vergrößert - Dies war bei einem reinen Packed-Bubble-Chart nicht möglich. Daraufhin haben wir uns entschlossen statt dem Packed-Bubble-Chart die Wortwolke zu verwenden.

Wortwolke zu den Todesursachen

Um die Unterschiede in den Todesursachen zwischen Mannheim und Heidelberg zu zeigen, hatten wir uns überlegt ein überlappendes Balkendiagramm zu verwenden, bei dem Heidelberg vor Mannheim abgebildet wird, sodass die Differenz noch stärker zu Tage tritt als es bei nebeneinander stehenden Balken der Fall wäre. Leider unterstützten unsere ausgewählten Bibliotheken diese Funktion nicht und für die Einarbeitung in weitere Bibliotheken war keine Zeit mehr, so wurde Hals-Über-Kopf das Stacked-Bar-Diagramm verwendet.

Wirtschaftsverteilung und eingezeichnete Industriegebiete der Städte im Vergleich

Um die Frage, in wie fern die, unserem subjektiven Empfinden nach, Mannheim prägenden Industrieanlagen, einen Einfluss auf die Sterblichkeit in Mannheim haben auch ohne geeignete Daten zu den Luftschadstoffen, nachgehen zu können, haben wir weitere Experimente durchgeführt. Wir haben versucht herauszufinden, wie groß der Anteil an potenziell der Gesundheit abträglichen Industrieanlagen ist, indem wir in den Stadtgrenzen Mannheims und unserer Vergleichsstadt Heidelberg die Gewerbegebiete eingezeichnet haben, wobei offensichtlich nicht-industriell genutzte Flächen soweit es ging ausgelassen wurden. Um auch eine objektive Maßzahl für die Stärke der Industrialisierung der gewählten Städte im Verhältnis zu zeigen wurden zusätzlich zwei Kreisdiagramme eingefügt. Sie zeigen die Wirtschaftssektorenverteilung der jeweiligen Städte an. Diese wurden anhand der Verteilung der Erwerbstätigen in den jeweiligen Städten auf die Sektoren ermittelt. Zuvor wurden für diese Darstellungen Balkendiagramme verwendet, leider ließ sich so ein Verhältnis schlecht ablesen.

Wortwolke zu den Todesursachen

Als letzte Visualisierung wollten wir die Einwohner/Arzt darstellen, da diese einen Hinweis auf die Qualität der Gesundheitsversorgung aufweisen könnten. Letztendlich handelt es sich nur um einen Vergleich, zwischen zweier Kennzahlen, den wir textuell ausdrücken wollten. Da das Modul “Grundlagen der Datenvisualisierung” heißt haben wir uns mit einem primitiven Balken-Diagramm zufrieden gegeben - natürlich auch da Zeit gefehlt hatte.

Einwohner/Arzt für Mannheim und Heidelberg

Erkenntnisse

Zunächst ist uns klar geworden, dass die Anzahl der Ärzte in Heidelberg wesentlich im Absolut größer ist als die in der Stadt Mannheim. Weitere nützliche Erkenntnisse konnten wir aus unserer Analyse nicht ziehen.

Auf der IExpo ist uns besonders aufgefallen, dass das Plakat tatsächlich von niemandem gelesen wurde. Lediglich die Überschrift (“Wer in Mannheim lebt, stirbt früher!”) wurde beachtet und hat wie erwartet Erstaunen und Interesse hervorgerufen. Was noch aufgefallen ist, ist dass die kleinen Texte niemand liest.. Dadurch, dass die Leute das Plakat nicht gelesen haben konnten wir ihnen unsere Anwendung zeigen. Auffällig dabei war, dass sich Story-Telling für eine Ausstellung, wie es die IExpo ist, nicht eignet. Der Grund hierfür ist, dass die Leute sich nicht die Zeit nehmen die erklärenden Texte zu lesen. Im Weiteren ist es schade, dass der ganze Stand durch einen einzigen Benutzer blockiert wird und somit eine Vorstellung für eine Gruppe nicht möglich ist. Das war schade.

Implementierung

Wir haben die Visualisierung mittels Webtechnologien realisiert, da heutzutage nahezu jedes Endgerät über einen Webbrowser verfügt. Für die Darstellungen der Informationen wurden verschiedene Javascript-Bibliotheken verwendet. Hierzu zählen:

  • ChartJS
  • D3JS
  • Leaflet

Für die durch Leaflet erzeugten Karten wurde Kartenmaterial des Internetdienstes Mapbox verwendet.

Fazit

Leider konnten wir unsere Hauptuntersuchungen nicht beenden, zumindest so wie oben beschrieben. Es wäre praktisch gewesen weitere fein granulare Informationen bezüglich der Luftverschmutzung zu den Untersuchten Städten zu haben. Diese sind bestimmt auf Anfrage bei den Ämtern zu erhalten, soweit ein wissenschaftlicher Kontext gegeben ist. Allgemein fehlten uns für die Daten das nötige wissenschaftliche Fachwissen bezüglich der Thematik, um vermeintliche Zusammenhänge auf ihre Validität zu überprüfen. Unsere Erkenntnisse könnten noch abschließend mit anderen Informationen erweitert werden, damit der Grund für das verfrühte Sterben aufgedeckt wird. Eine interessante Untersuchung wäre, die Zeit der Rettungsweganfahrten unseren Erkenntnissen gegenüber zu stellen.