Zählen mit Overpass Turbo für Wochenaufgaben

Nach der Aufgabe mit der Adressstatistik und dem User:gehrke Support habe ich immer drüber nachgedacht, wie einfach ohne Datenbank eine Auswertung nach Landkreisen mit der Overpass gemacht werden kann. (bin auch parallel darauf angesprochen worden).

Habe ein unreifes Zwischenergebnis (Beta auf dem Mac), das ich hier gerne teilen möchte.

Datei QueryOSM.tmpl (Beinhaltet die overpassabfrage, die lediglich IDs zum Count ausgibt, #REGIO# wird durch den Regionalsschlüssel o.ä ersetzt.

area["de:regionalschluessel"=#REGIO#];
(node(area)[amenity=pharmacy];
 way(area)[amenity=pharmacy];
 rel(area)[amenity=pharmacy]);
out ids;

Datei GetData.sh (Das eigentliche Script)

# Überschrift für die CSV Datei schreiben
echo "Regionalschluessel;Anzahl" > out.erg

# regiolist.txt Datei mit allen angefragten Regionalschlüsseln öffnen

cat regiolist.txt | while read line
do
  
  # Overpass Template Datei Regionalschlüssel durch aktuellen ersetzen
  sed 's/'#REGIO#'/'$line'/g' QueryOSM.tmpl >Query.osm
  #Abfrage der Overpass mit curl
  curl -o target.osm -d @Query.osm "http://overpass-api.de/api/interpreter" 
  # Ausgabe des Regionalschlüssels mit ;
  echo -n "$line;" >>out.erg
  # Und die Anzahl der IDs hinterher.
  grep -c "id" target.osm >>out.erg
  
done

dann noch die unspektakuläre Datei regiolist.txt (Auszug, vollständige Listen einfach aus der WA3334 zusammen"klauben")

055150000000
05762
020000000000
081110000000
06531
06440
095630000000
03353
08415
08216
08116
06633
05554
06439
08315

Zum installieren alles in einen Ordner packen und das GetData.sh ausführen.
Ich gehe davon aus, das das auf Linux auch 1:1 läuft (da der Mac kein standardmässig kein wget hat, habe ich curl genommen).
Was unter Windows zu installieren ist, damit man das Script laufenlassen kann, weiss ich leider nicht.

Christoph
P.S. was gezählt wird, verrate ich nicht :slight_smile:

P.S.
Danke an Roland und den Bonner Stammtisch für den coolen Overpass Workshop gestern in Königswinter.

Dateien sind zu hier finden:
https://drive.google.com/folderview?id=0B51rWcvBsEyaclVJUlZwZzVHNHc&usp=sharing

Kommt zu der Abfrage noch ein “Zu Risiken und Nebenwirkungen…”? :wink:

Ja,

Zu Risiken und Nebenwirkungen im Falle komplexer parallelisierter(1) Overpass Abfragen fragen sie das Oracle, oder geben bitte einen anderen Server an :slight_smile:

(1), die hier präsentierte Beta Version ist nicht parallelisiert, ist aber bestimmt nicht schwer.

Das wird nix. Limit ist eine gleichzeitige Abfrage pro IP-Adresse. Jede weitere Abfrage hängt erstmal in der Warteschleife rum bzw. wird sogar nach Timeout abgebrochen.

Guckst du hier: https://lists.openstreetmap.org/pipermail/talk-de/2013-December/106414.html

macht Sinn…

Script und Folien sind übrigens auch online verfügbar. Vielen Dank dafür!!

Ich kann jedem, der sich bisher nicht ans Thema getraut hat, nur empfehlen, da mal reinzuschauen und die Beispiele auszuprobieren. Es lohnt sich!

Link: http://wiki.openstreetmap.org/wiki/Talk:Bonn/Veranstaltungen

Cross Referenced from Adressstatistik:

Vielleicht kann mir, dem absoluten Programiersprachen-Nichtkenner, hier jemand helfen. Die Beispiele der Wiki haben mir leider nicht geholfen :frowning:
Ich wollte mal nach der Wochenaufgabe “Richtungsspuren” auswerten, wieviele turn:lanes, turn:lanes:forward und turn:lanes:backward pro Landkreis erfasst sind. Für die Bundesländer hatte ich sowas schon mal jeweils einzeln gemacht.
Rauskommen soll dann irgendeine mit Tabellenkalkulation weiter verwertbare Datei, in der die Landkreise untereinander mit der jeweiligen Anzahl der turn:lanes, turn:lanes:forward und turn:lanes:backward in den Spalten daneben stehen.

Nahmd,

Ich hab eine Auswertung für alle Admin-Boundaries bis Level 8 in der Deutschland-BBOX laufen lassen mit diesem Ergebnis (dito bis Level 12. Die Dateien sind UTF-8 codiert und Tab getrennt; sie sollten sich in ein Spredsheet einlesen lassen.

Vergleiche bitte so möglich mit Daten aus anderer Quelle; ich habe ein Programm genutzt, das für einen gänzlich anderen Zweck gedacht ist, (Denk-)Fehler sind da nicht ausgeschlossen.

Gruß Wolf

Edit: Link geändert und Level 12 ergänzt.

Kurze Frage zum Regionalschlüssel in Deutschland im allgemeinen und im OSM im speziellen.

Die Regionalschlüssel bilden ja einen Baum (über die ersten identischen Stellen)
Ist nun die überdeckte Fläche aller Blätter eines Astes gleich der überdeckten Fläche des Astes ?

Dann könnte ich mich in meinem kleine Overpass Zählprojekt(*) einfach auf die Blätter “fokussieren”, und bräuchte mich nicht um die unterschiedlichen admin_level zu kümmern. Addieren geht nachher auch einfacher.

Christoph

(Zählprojekt Early Pre Alpha: http://thefive.sabic.uberspace.de/nodejs/table.html?lok=10&period=month&measure=AddrWOStreet, uptime nicht garantiert, hier noch mit WA3334 Daten.)

Für die anderen gleich vorweg, Christoph wird vermutlich nichts dafür können, dass in der Bundesländerliste dann so seltsame Städe wie Halle, Schwerin und Co. auftreten … ohne geguckt zu haben nehme ich an, dass dort der Regioschlüssel wohl nicht ganz korrekt ist?!

Ist vermutlich ein nicht ganz “Klares” UX.

Wenn du auf “Bundesländer” Klickst, wird die Schlüssellänge auf 2 gesetzt.

Er addiert dann alle Zählwerte der Schlüssel die in den ersten beiden Stellen gleich sind, und sucht sich den richtigen Namen dazu (mit OSM Daten).

Funzt auch mit einer Schlüssellänge von 3 (ich habe das mal mit “middle” bezeichnet, da mir nichts eingefallen ist), mit einer Schlüssellänge von 4 (bitte in den Parametern in der URL einstellen) und mit einer maximalen Schlüssellänge (Detail).

Beim Gruppieren auf der Zeitachse wird nicht addiert, sondern der letzte Wert in der Periode genommen.

Christoph

edit: Und die Zahl in den Klammern hinter den Namen ist der admin_level aus der DB.

Danke dafür. Ich werde mir das mal nachher genau anschauen. Wäre hier auf dem Smartphone etwas umständlich. Gegenchecks für einzelne Kreise mache ich mit dem Overpass-turbo als Stichproben.

Funzt und Check der Plausibilität mit einigen Kreisen war positiv :slight_smile:

Jein. Ein Kreis und noch eher ein Bundesland ist potentiell größer als die Vereinigung seiner Gemeinden und gemeindefr. Gebiete. Insb. an der Küste.
Aber das kann man getrost ignorieren, denke ich.

Bevor da jemand übereilig “korrigiert”. Die Regionalschlüssel sollten deutschlandweit eigentlich korrekt sein. Gemeinden (auch kreisfreie) haben immer einen Schlüssel der Länge 12.

Vor allem nicht korrigieren, nur weil das Frontend einer “early pre alpha” “unausgegoren” ist.

Die Schlüssel der Messungen werden jetzt mit ausgegeben, ich müsste noch deutlich machen, das es eine Messung oder eine Aggregation ist. Darüberhinaus hab ich den Admin Level mal temporär aufgenommen.

Nach dem Hinweis von user:Gehrke kann ich dann ja mal anfangen die Zahlen der 11k Ortsteile in einer regelmässigen Nacht und Nebelaktion von der Overpass zu erhalten.

Christoph

Da die Abfrage wohl mehrere Stunden laufen, würde ich zur Sicherheit einfach mal bei Roland nachfragen, ob er da irgendwelche Probleme sieht.