Lesser ist der Name der Freien Software, mit der wir die Daten visualisieren

Wer an der Software interessiert ist und selbst damit arbeiten möchte, kann sich eine Kopie herunterladen.

git clone git://source.free-owl.de/map

Wie werden die Daten verarbeitet?

1. Daten pro Ort zusammenstellen

Aus der xlsx Quelldatei der Polizei

map/data/district/guetersloh/accidents/2021.xlsx

wird mit der Software catmandu

map/data/district/guetersloh/accidents/2021.json

Diese Datei enthält alle gemeldeten Unfälle in einem Jahr und im nächsten Schritt mit cadmandu und einer allgemeinen FIX Datei

map/fix/accidents/police-guetersloh.txt

angepasst und mit einer ortspezifischen FIX Datei

map/fix/accidents_rietberg_2021.txt

in eine ortsbezogene json Datei verarbeitet.

map/build/data/accidents_rietberg_2021.json

2. Internet Darstellung vorbereiten

Stadtgrenzen erstellen

Wir nutzen die freie Openstreetmap Karte und holen uns dafür zuerst die Stadtgrenzen. (relation)

-> https://osm.org -> Im Suchfeld Rietberg eingeben -> Maus über Stadt Rietberg -> unten wird die Relation angezeigt

https://www.openstreetmap.org/relation/78758

Diese Relation tragen wir in unser Script ein:

map/bin/get-boundaries.sh

city rietberg relation/78758

Wenn wir jetzt das Script get-boundaries.sh starten, werden aus den Openstreetmapkarten die Stadtgrenzen geholt und in eine Datei eingetragen:

map/vendor/osm/boundary_rietberg.json

Hier werden die Stadtgrenzen dauerhaft abgelegt, um das Openstreetmap Projekt mit wenig Datentransfer zu belasten.

Unfälle in der Karte anzeigen lassen

Für die Aufbereitung der Daten in eine Openstreetmap Karte muss eine index.html Seite angelegt werden:

map/src/city/rietberg/accidents/2021/index.html

In der allgemeinen FIX Datei werden die Spaltenköpfe ungeschrieben und einige Spalten aufgeteilt, so dass sie dann spezifisch ausgewertet werden können.

In der ortsbezogenen FIX Datei

accidents_rietberg_2021.txt

steht ein Filter, welche Daten aus der json Datei herausgezogen werden sollen.

select all_equal(location.locality, 'dbr:Rietberg')
select all_match(startTime, '^2021-')

Hier werden alle Daten der Stadt Rietberg, die mit der Jahreszahl 2021 beginnen, herausgefiltert und in die Datei

Alle Inhalte in diesem Wiki stehen unter der Creative Commons SA 4.0 DE Lizenz