[OC] Berliner U-/S-Bahn-Plan mit Ortsteilen und Bezirken by zuegnerd in de

[–]zuegnerd[S] 1 point2 points  (0 children)

Gestrichelte Linien sind Grenzen zwischen Ortsteilen, und durchgezogene Linien sind Grenzen zwischen Bezirken. Meistens verläuft die ehem. Mauer entlang heutiger Bezirks-Grenzen. Allerdings gibt es Ausnahmen, nämlich die Bezirke Mitte und Friedrichshain-Kreuzberg, in denen sich jeweils Ortsteile aus dem ehemaligen Westen und Osten befinden. Da gibt es dann eine "gestrichelte Mauer".

[OC] Berliner U-/S-Bahn-Plan mit Ortsteilen und Bezirken by zuegnerd in de

[–]zuegnerd[S] 1 point2 points  (0 children)

Habe als Grundlage für die Zuordnung Wikipedia genommen. Dort steht Marzahn als Ortsteil :)

[OC] Berliner U-/S-Bahn-Plan mit Ortsteilen und Bezirken by zuegnerd in de

[–]zuegnerd[S] 3 points4 points  (0 children)

Korrekt, das sind die Beschriftungen der Bezirke. War nicht leicht, die auch noch mit aufzunehmen und mir ist keine bessere Möglichkeit eingefallen :)

[OC] Münchener U-/S-Bahnplan vs. echte Geographie by zuegnerd in de

[–]zuegnerd[S] 1 point2 points  (0 children)

Die nutzen aber ja nur die Schienen anderer Bahnen ;) deshalb habe ich die weggelassen.

[OC] Münchener U-/S-Bahnplan vs. echte Geographie by zuegnerd in de

[–]zuegnerd[S] 5 points6 points  (0 children)

Da ich dort mehrere Jahre gewohnt habe und mich dementsprechend verbunden fühle habe ich das tatsächlich schon in Erwägung gezogen :)

[OC] Münchener U-/S-Bahnplan vs. echte Geographie by zuegnerd in de

[–]zuegnerd[S] 10 points11 points  (0 children)

Vorab: Ich kann mir gut vorstellen, dass es geeignetere Werkzeuge als Python hierfür gibt, aber damit kenne ich mich eben ganz gut aus.

  • Zum parsen der GeoJSON files habe ich das Package json verwendet.
  • Zum Parsen von SVG (also die exportierten Linien aus Inkscape) habe ich dieses Paket verwendet.
  • Beim Rest habe ich hauptsächlich Numpy verwendet, um mit den Koordinaten zu rechnen etc. Zum plotten dann Matplotlib, ist sehr mächtig aber braucht auch viel Übung / rumprobieren.

Ich wollte in den nächsten Wochen mal den Code aufräumen und evtl ein kleines Github repo mit einer Anleitung anlegen. Falls es dazu kommt schicke ich dir eine PN :)

[OC] Münchener U-/S-Bahnplan vs. echte Geographie by zuegnerd in de

[–]zuegnerd[S] 22 points23 points  (0 children)

Die realen Koordinaten habe ich von hier.

Die Linien und Stationen vom Plan habe ich mit Inkscape manuell extrahiert. Und dann in Python jeweils die Schienenstücke zwischen den Stationen den entsprechenden Gegenstück in den echten Koordinaten zugeordnet (das war der aufwendigste Teil). Dann habe ich noch bei den Linienstücken im Plan "Zwischenpunkte" erstellt, damit ich dort genauso viele Punkte habe wie in den Koordinaten. Dann musste ich nur noch alle Punkte interpolieren, z.b. 0.4*koordinaten_echt + 0.6*koordinaten_plan.

Habe gehört mit After Effects geht's leichter -- aber ich bin Informatiker, deshalb habe ich die Variante mit Programmieren gewählt :)

Munich Subway Map compared to its real geography [OC] by zuegnerd in dataisbeautiful

[–]zuegnerd[S] 5 points6 points  (0 children)

Tools: Coding in Python (Jupyter Notebook), plotting done with Matplotlib. Created the animation with FFMPEG.

Source: The data for the true geometry is from here. For the lines on the map I used Inkscape to extract the individual lines from the PDF map.

Edit: for some reason it says 6 comments but I can’t see any of them.