OSM Daten als SVG exportieren
Ich möchte euch heute ein cooles Projekt vorstellen. Der Hase nutzt die Zeit während seines Spezialprojektes sehr effektiv und hat am Wochenende ein Python-Projekt auf GitHub geladen.
Mit dem Skript könnt ihr Daten aus OpenStreetMaps als XML oder SVG exportieren. Das ist super-nützlich, wenn ihr eine skalierbare Grafik vom “Grundriss” eurer Heimatstadt, eures Lieblingsbundeslandes, eurer Lieblingsinsel, Bielefeld oder Trinidad und Tobago braucht.
Das bietet sich auch super für ein Ratespiel an. Wer weiß welche Stadt das ist?
Los geht’s!
Als erstes solltet ihr die einzige Voraussetzung auf eurem System installieren: Python 3. Ich empfehle (vor allem unter Windows) das mittels Anaconda zu tun. Ladet euch die neuste Version herunter und folgt den Anweisungen des Installers: https://www.anaconda.com/distribution/.
Ob alles geklappt hat, könnt ihr in der Windows Eingabeaufforderung testen. Wenn ihr python
eingebt, solltet ihr einen Hinweis zur installierten Version erhalten.
C:\Users\Batman>python
Python 3.7.0 (default, Jun 28 2018, 08:04:48) [MSC v.1912 64 bit (AMD64)] :: Anaconda, Inc. on win32
Type "help", "copyright", "credits" or "license" for more information.
Als nächstes ladet ihr euch aus dem Repository das Skript herunter: https://github.com/mhaseneyer/osmxml/blob/master/src/osm2svg.py
Und als letztes sucht ihr noch den passenden OSM-Link für das Objekt eurer Wahl heraus. Um das Rätsel von oben aufzulösen, nehmen wir mal an ihr interessiert euch für die Umrisse von Stuttgart: https://www.openstreetmap.org/relation/2793104.
Die sehen in OSM wie folgt aus.
Die Wundermaschine anwerfen
Mit nur einem Befehl lassen wir Python jetzt das Objekt von OSM herunterladen und in eine SVG umwandeln. Dafür übergebt ihr dem Skript einfach den Link zu OSM und einen Namen für das SVG-File.
C:\Users\Batman>python link/to/osm2svg.py https://www.openstreetmap.org/relation/2793104 stuttgart.svg
So einfach ist das. Richtig geiler Scheiß, Danke! 👍
I used to have a comments box on this blog, but found that maintaining another system and dealing with the cookies is cumbersome. So, if you have any thoughts on what I wrote in this article, please write me an email and we can have a conversation about it.
reply via email ✉️
I put a lot of work into maintaining this blog and I really enjoy the interactions I get with you, dear readers. I you liked what you just read and want to do me a little favor, please tip me a cup of coffee as it's the fuel that keeps me going:
buy me a coffee ☕️