You are not logged in.
- Topics: Active | Unanswered
Announcement
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***
#1 2016-11-16 23:23:19
- DarsVaeda
- New Member
- Registered: 2016-11-16
- Posts: 2
Export der Postleitzahlengebiete als GeoJson
Hallo,
ich möchte gern eine Art Postleitzahlen-Heatmap mit allen Postleitzahlen Deutschlands erstellen in der Art wie: https://maps.aimpulse.com/osm/addresses/
Soweit ich herausgefunden habe, kann ich das mit leaflet.js machen.
Dafür brauche ich die Postleitzahlengebiete als GeoJson.
Ein User hier macht ja genau das was ich suche: https://osm.wno-edv-service.de/pcboundaries/
In einem Thread hier im Forum: https://forum.openstreetmap.org/viewtopic.php?id=27241 wird geraten dafür QGis und die overpass-Api zu nutzen.
Aufgrund der Datenmenge und Nutzungsbedingungen denke ich nicht das ich die gehostete API nutzen kann.
Nun frage ich mich wie kompliziert es wohl ist das ganze selbst lokal aufzusetzen und daraus die Daten zu exportieren?
Offline
#2 2016-11-17 10:09:53
- wambacher
- Member

- From: Schlangenbad/Wambach, Germany
- Registered: 2009-12-16
- Posts: 16,769
- Website
Re: Export der Postleitzahlengebiete als GeoJson
Dafür brauche ich die Postleitzahlengebiete als GeoJson.
Ein User hier macht ja genau das was ich suche: https://wambachers-osm.website/pcboundaries/
jo, das stimmt fast ![]()
In einem Thread hier im Forum: https://forum.openstreetmap.org/viewtopic.php?id=27241 wird geraten dafür QGis und die overpass-Api zu nutzen.
schon mal gesehen, wie alt der ist? Aber gehen tut das schon.
Aufgrund der Datenmenge und Nutzungsbedingungen denke ich nicht das ich die gehostete API nutzen kann.
Die Datenmenge ist nicht das Problem - nur es gibt hier keine API. Es gibt derzeit nur eine GUI, die zum Export aller PLZ-Grenzen nie gedacht und auch nicht geeignet ist.
daher versuche mal:
wget -O alle_plz.geojson 'https://wambachers-osm.website/geoserver/osm/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=osm:postal_boundaries&maxFeatures=10000&outputFormat=application%2Fjson'Das ist relativ frisch und könnte funktionieren. Sollten etwa 150 Mb sein. Du musst danach nur alle PLZ > 100000 ignorieren. Das sind PLZ-Zonen.
Nun frage ich mich wie kompliziert es wohl ist das ganze selbst lokal aufzusetzen und daraus die Daten zu exportieren?
also einfach ist das net.
Gruss
walter
Last edited by wambacher (2017-08-04 23:27:49)
Offline
#3 2016-11-17 11:31:14
- Harald Hartmann
- Member

- From: 98667 Schönbrunn
- Registered: 2014-04-02
- Posts: 3,123
- Website
Re: Export der Postleitzahlengebiete als GeoJson
also einfach ist das net.
wie wäre es mit einer kurzen stichpunktartigen Liste (Schlagworte), damit das der User selbst entscheiden kann? Vielleicht ist er ja voll der Krack oder ihm poppt ein Fragezeichen nach dem anderen auf und streicht schon bei PostGIS die Segel...
Mein aktives Gebiet: Gemeinde Schleusegrund
Fingerprint meines Schlüssels: 71F7 3CD9 B647 9079 6B88 326E 8B8B 72AE 34F9 5AAD
Offline
#4 2016-11-17 12:16:25
- wambacher
- Member

- From: Schlangenbad/Wambach, Germany
- Registered: 2009-12-16
- Posts: 16,769
- Website
Re: Export der Postleitzahlengebiete als GeoJson
wambacher wrote:also einfach ist das net.
wie wäre es mit einer kurzen stichpunktartigen Liste (Schlagworte), damit das der User selbst entscheiden kann? Vielleicht ist er ja voll der Krack oder ihm poppt ein Fragezeichen nach dem anderen auf und streicht schon bei PostGIS die Segel...
naja - wenn es der Wahrheitsfindung dient:
- PostgreSQL-DB mit PostGIS
- Import der Rohdaten mit osm2pgsql
- Query auf planet_osm_polygon mit osm_id<0, boundary=postal_code und Spatialem Filter für Deutschland
- Umwandlung der Geometrien mit ST_AsGeoJson()
- Ausgabe aller relevanten Tags und der Geometrien
feddich.
Gruss
walter
ps: geht natürlich auch noch anders, aber that's "My Way"
Offline
#5 2016-11-17 12:26:42
- gormo
- Member
- Registered: 2013-08-01
- Posts: 2,119
- Website
Re: Export der Postleitzahlengebiete als GeoJson
Aufgrund der Datenmenge und Nutzungsbedingungen denke ich nicht das ich die gehostete API nutzen kann.
Die Datenmenge ist nicht das Problem - nur es gibt hier keine API. Es gibt derzeit nur eine GUI, die zum Export aller PLZ-Grenzen nie gedacht und auch nicht geeignet ist.
Ich glaube, er meint die Overpass API, aber auch die dürfte mit einmalig 150MB gut zurecht kommen, vorallem wenn man die FR-instanz oder die auf rambler nimmt.
OSM hat nicht das Ziel bis Ende des Monats einen vollständigen Datensatz der Welt zu enthalten.
(nach S.W.) - Aber weil die Welt vielfältig ist, weil sie auch im Detail interessant ist, mag ich genaue Karten (nach C.)
Offline
#6 2016-11-17 12:33:48
- mmd
- Member
- Registered: 2010-11-06
- Posts: 2,150
Re: Export der Postleitzahlengebiete als GeoJson
Ich glaube, er meint die Overpass API, aber auch die dürfte mit einmalig 150MB gut zurecht kommen, vorallem wenn man die FR-instanz oder die auf rambler nimmt.
Ich weiß nicht genau, wo die Zahl herkommt, alle Relationen mit type=boundary und boundary=postal_code weltweit sind eher >500MB als XML.
Evtl. interessant: als PBF (auch weltweit) sind das 27MB Download (DB wird momentan nicht aktualisiert, nur testweise!)
http://overpass-turbo.eu/s/k7V -> Export -> Rohdaten direkt von Overpass API
Die Datei "interpreter" würde ich dann in plz.pbf oder ähnlich umbenennen und dann mit osm2pgsql in eine DB laden. Dann weitermachen wie oben beschrieben.
Last edited by mmd (2016-11-17 12:36:37)
Offline
#7 2016-11-17 12:46:25
- wambacher
- Member

- From: Schlangenbad/Wambach, Germany
- Registered: 2009-12-16
- Posts: 16,769
- Website
Re: Export der Postleitzahlengebiete als GeoJson
Ich weiß nicht genau, wo die Zahl herkommt, alle Relationen mit type=boundary und boundary=postal_code weltweit sind eher >500MB als XML.
Die kommt von mir und betrifft alle PLZ-Grenzen in DE. Und natürlich im vom Fragesteller gewünschten GeoJson-Format.
Gruss
walter
Last edited by wambacher (2016-11-17 12:46:39)
Offline
#8 2016-11-17 16:17:29
- Gehrke
- Member
- From: Bremen, DE
- Registered: 2013-10-19
- Posts: 1,894
- Website
Re: Export der Postleitzahlengebiete als GeoJson
Es ist oft nicht notwendig, die Grenzen mit Haltepunkten alle paar Meter im Web anzuzeigen. Stattdessen kann man sie simplifizieren.
Das GeoJSON für die Landkreise kann so z.B. auf ca. 1,3 MB reduziert werden.
Offline
#9 2016-11-17 17:46:46
- wambacher
- Member

- From: Schlangenbad/Wambach, Germany
- Registered: 2009-12-16
- Posts: 16,769
- Website
Re: Export der Postleitzahlengebiete als GeoJson
Es ist oft nicht notwendig, die Grenzen mit Haltepunkten alle paar Meter im Web anzuzeigen. Stattdessen kann man sie simplifizieren.
Das GeoJSON für die Landkreise kann so z.B. auf ca. 1,3 MB reduziert werden.
Das Vereinfachen von sich berührenden Polygonen ist nicht gerade trivial, wenn man Wert darauf legt, dass sich keine Lücken oder Überlappungen bilden.
siehe: http://trac.osgeo.org/postgis/wiki/User … veTopology
Ich möchte das hier nicht als Lösungsvorschlag vorstellen, sondern hier wird in der dritten Grafik nur verständlich dargelegt, wo es Probleme geben kann.

Und zudem kommt es bei manchen Anwendungen wirklich auf jeden Meter an:
Gruss
walter
Last edited by wambacher (2016-11-17 17:54:12)
Offline
#10 2016-11-17 20:44:05
- Gehrke
- Member
- From: Bremen, DE
- Registered: 2013-10-19
- Posts: 1,894
- Website
Re: Export der Postleitzahlengebiete als GeoJson
Klar, kommt immer darauf an, wofür man es braucht. Man kriegt es schon hin, dass sich angrenzende Polygone ohne Lücken berühren. Das ist aber schon etwas komplizierter - stimmt.
Last edited by Gehrke (2016-11-17 20:44:19)
Offline
#11 2016-11-18 21:05:23
- DarsVaeda
- New Member
- Registered: 2016-11-16
- Posts: 2
Re: Export der Postleitzahlengebiete als GeoJson
daher versuche mal:
wget -O alle_plz.geojson 'https://osm.wno-edv-service.de/geoserver/osm/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=osm:postal_boundaries&maxFeatures=10000&outputFormat=application%2Fjson'
Hehe ja habe gesehen, dass der Thread sehr alt ist.
Mit der API meinte ich tatsächlich die Overpass-API wie im erwähnten Thread empfohlen.
Aber VIELEN VIELEN dank für deinen Link.
Ich hatte schon überlegt es über deine Webseite zu machen und mir die Plz-Kreise "einzeln" herunter zu laden. Allerdings wollte ich deinen Server nicht zu sehr belasten, weil ich das ja ganz kostenfrei mache.
Mit den Daten von dir konnte ich jedenfalls schonmal einen Prototypen erstellen (so oft ändern sich die Zonen ja nicht).
Ich habe erstmal alle Zonen einzeln nachgeladen. Leider steigt da der Browser auf dem Testsystem mit Win32 4GB RAM bei ~6000 eingefügten Zonen aus
(Daher die blanken Flächen.)
Da muss ich wohl noch was optimieren, sieht aber schon sehr vernünftig aus!
Harald Hartmann wrote:wie wäre es mit einer kurzen stichpunktartigen Liste (Schlagworte), damit das der User selbst entscheiden kann? Vielleicht ist er ja voll der Krack oder ihm poppt ein Fragezeichen nach dem anderen auf und streicht schon bei PostGIS die Segel...
naja - wenn es der Wahrheitsfindung dient:
- PostgreSQL-DB mit PostGIS
- Import der Rohdaten mit osm2pgsql
- Query auf planet_osm_polygon mit osm_id<0, boundary=postal_code und Spatialem Filter für Deutschland
- Umwandlung der Geometrien mit ST_AsGeoJson()
- Ausgabe aller relevanten Tags und der Geometrien
Ich habe Medieninformatik studiert und Geoinformationssysteme wurden ebenfalls behandelt. Also ein bisschen sagt mir das alles schon etwas ![]()
Aber ich muss da nochmal kräftig auffrischen.
Jedoch hilft mir die Liste auf jeden Fall schon deutlich weiter, denke ich. Vielen Dank ein weiteres Mal!
gormo wrote:Ich glaube, er meint die Overpass API, aber auch die dürfte mit einmalig 150MB gut zurecht kommen, vorallem wenn man die FR-instanz oder die auf rambler nimmt.
http://overpass-turbo.eu/s/k7V -> Export -> Rohdaten direkt von Overpass API
Die Datei "interpreter" würde ich dann in plz.pbf oder ähnlich umbenennen und dann mit osm2pgsql in eine DB laden. Dann weitermachen wie oben beschrieben.
Ah okay, das hilft auch weiter, denke ich. Ich hatte mir schon die kompletten Daten von Deutschland von http://download.geofabrik.de/ gezogen und dann mit osmfilter nach boundary und postal_code gefiltert. Nur konnte ich dann mit den gefilterten Daten weiter nichts anfangen. Ich weiß nicht wie ich davon auf die Polygone komme.
Es ist oft nicht notwendig, die Grenzen mit Haltepunkten alle paar Meter im Web anzuzeigen. Stattdessen kann man sie simplifizieren.
Das GeoJSON für die Landkreise kann so z.B. auf ca. 1,3 MB reduziert werden.
siehe: http://trac.osgeo.org/postgis/wiki/User … veTopology
Ich möchte das hier nicht als Lösungsvorschlag vorstellen, sondern hier wird in der dritten Grafik nur verständlich dargelegt, wo es Probleme geben kann.
Das dürfte je nach Anwendung zur Optimierung sehr interessant sein, falls es mal mehr als ein Prototyp wird. Denn je nach Ausgabe müssen die Grenzen nicht immer super akkurat sein.
Vielen Dank an alle! Ich habe aus dem Thread schon mal viel mitgenommen.
Ich denke wenn ich die GeoJson-Daten das nächste Mal selbst erzeugen möchte, komme ich nochmal auf den Thread zurück ![]()
Offline
