Wissen belastet
Home Über die Titel-Grafik Impressum Wissen belastet by Email RSS RSS Feed
Visualisiert: 24 Stunden Wiener Linien

Kunst, Design, Dienstag 22 September 2009 09:04

Ich liebe ja Visualisierungen von Infrastrukturen, denn normalerweise wird erst dann jedem klar wie wichtig sie sind, wenn sie ausfallen. Ein schönes Beispiel dafür ist “Taxis in London” der BBC.

Sowas will ich auch für Wien haben!

Darum fing ich an nach Daten zu suchen und wurde bei den Wiener Linien fündig. Auf dieser Seite (bzw. auf der Barrierefreien Version)  kann man sich anzeigen lassen, wann der nächste Bus, die nächste Straßenbahn kommt.

Das ist schon mal ganz brauchbar, nur musste ich erst einmal herausfinden wie viele Haltestellen darüber abgebildet werden. Ein kleines Perl-Skript gab mir, nach rund 20.000 Seiten-abrufen :) , die Antwort.

Das nächste Problem war, dass immer nur die Daten für die nächsten zwei Stunden angezeigt werden. Auch hier half ein Perl-Skript das stündlich alle gefundenen Stationen abfragte und so, über einen Zeitraum von mehreren Tagen, alle Daten sammelte.

Da die Uhrzeitangabe nicht unbedingt immer dem Fahrplan entspricht sondern ja auch Realtime-Daten enthält, musste ich noch einen Filter einbauen der Abfahrten an einer Haltestelle die zu nah zusammen liegen bereinigt.

Das Resultat ist eine Datenbank mit 1048 Haltestelle die von 44 Buslinien, 29 Straßenbahnlinien und 18 Nightline-Busse innerhalb von 24 Stunden 510.026 Mal angefahren werden!

Leider bietet die Webseite der Wiener Linien keine Informationen über U-Bahnen und Busse die auf “B” enden an, eigentlich eigenartig, weiß jemand wieso?

Nach einer Geocodierung der Haltestellen und ein paar Korrekturen konnte ich das ganze auch schon visualisieren, hier das Ergebnis, “24 Stunden Wiener Linien“, am besten in “HD” und Fullscreen ansehen:

Die Balken links oben zeigen wie viele Busse und Straßenbahnen zu der angezeigten Uhrzeit Stationen anfahren.

So stehen jeden Tag um 18:00 Uhr 242 Busse und 266 Straßenbahnen in Haltestellen!

Wobei ich Systembedingt nicht nachrechnen kann wie viele Busse oder Straßenbahnen zu dem Zeitpunkt sich gerade zwischen zwei Stationen befinden.

Interessant ist auch die Zeit so um 1:30 in der Nacht wenn alle Straßenbahnen und Busse in die Remisen fahren.

Ich denke man bekommt ein Gefühl dafür wie wichtig und logistisch aufwendig der öffentliche Nahverkehr ist und das dieser ruhig etwas kosten darf!

Auch finde ich das solche Daten über APIs zugänglich sein sollten, wer weiß was da noch alles entstehen könnte!

EDIT: Da es schon einige Anfragen gab: Wer mit den Daten selber herumexperimentieren will kann sich einen MySQL-Dump runterladen, freue mich auf andere Visualisierungen!

  1.  
    22. September 2009 | 09:09

    [...] This post was mentioned on Twitter by Martin Leyrer and Bernhard Natschläger. Bernhard Natschläger said: RT @karli: Neuer Blogbeitrag: Visualisiert: 24 Stunden Wiener Linien http://bit.ly/25WkLe [...]

  2.  
    oberhamsi
    22. September 2009 | 09:10

    hm, ob du wohl die DB zum download hergeben darfst?

  3.  
    max
    22. September 2009 | 09:13

    @oberhamsi gerne, soll ich dir einen mysql-dump an die von dir angegebene andresse mailen?

  4.  
    max
    22. September 2009 | 09:24

    @oberhamsi hab den Dump jetzt direkt im Artikel verlinkt.

  5.  
    @nic_ko
    22. September 2009 | 09:28

    grandios! :)

  6.  
    22. September 2009 | 09:46

    Wie hast Du aus den Daten dann das Video erstellt? Hast Du dafür auch ein kleines Programm?

    Ich finde die Darstellung echt klasse…

  7.  
    max
    22. September 2009 | 09:48

    @Renée mit Perl und ImageMagick die Bilder gerendert und dann mit Sony Vegas zusammengebaut.

  8.  
    Markus Ladstätter
    22. September 2009 | 09:51

    Ich hab mal nachgefragt bei den Wiener Linien ob es geplant ist, U-Bahnen ins System aufzunehmen, da hieß es (Stand Eröffnung von itip): “Ja ist geplant, einen Umsetzungstermin können wir noch nicht nennen”

    Danke für die Realisation Max, diese Idee hatte ich auch schon lange, mangels Realisationsmöglichkeiten hab ich es allerdings nie umgesetzt.

    Werde mir auf jeden Fall die Datenbank holen und mal schauen was man aus den Daten machen könnte.

  9.  
    max
    22. September 2009 | 09:54

    @Markus es gibt eigentlich auch die daten ob barriefreie straßenbahn oder nicht, die habe ich jetzt nicht erfasst, könnte ich aber noch falls bedarf.

  10.  
    Markus Ladstätter
    22. September 2009 | 10:00

    Es gibt auch die Daten ob es ein barrierefreier Bus ist, oder nicht. in der jetzigen Anzeige allerdings nicht sehr hilfreich, da alle Busse eine Rampe haben. Mit den Straßenbahndaten werde ich mich allerdings spielen.

    Auf eine API fürchte ich, wird man lange warten können, die Wiener Linien geben Daten nur ungerne heraus.

  11.  
    Markus Ladstätter
    22. September 2009 | 10:01

    Noch eine Frage: Wieviele Seitenaufrufe haben deine Scripts generiert, und hattest du nie time-outs oder wurdest geblockt?

  12.  
    22. September 2009 | 10:05

    Schaut sehr lässig aus. Vor allem die Nacht, mit den nightlines, aber das liegt wohl an meiner Präferenz der Farbe Grün:) (und nein, das war kein politisches statement):

  13.  
    max
    22. September 2009 | 10:05

    @Markus kein Timeout, keine Blockierung.

  14.  
    22. September 2009 | 10:21

    hi max,

    super projekt!

    hat’ sich eigentlich bei jemals wer aufgeregt, dass du dir per bot die daten holst? ich hab’ immer zuviel skrupel sowas zu machen. in österreich gibt es irgendwie keine api-kultur, dabei gäbe es ja nette daten – zb.: falter-daten, asfing, sportklub spielergebnisse usw.

    reicht es in österreich die robots.txt auszulesen und wenn kein “denied” vorkommt kann mensch grappen?

    wäre schön wenn man in ö mehr solcher projekte sieht und auch die reaktionen vom datenhalter (hier VOR) blogt!

    liebe grüsse
    heimo

  15.  
    max
    22. September 2009 | 10:24

    @heimo hier gabs keine probleme.

    es wäre schön wenn noch mehr leute sich daten “holen”, viel ist vorhanden, muss nur “abgeholt” werden.

  16.  
    Dan
    22. September 2009 | 11:02

    Die B-Linien werden von anderen Unternehmen (z.B. Dr. Richard) betrieben, dort kann man sich auch die Fahrpläne dafür besorgen.

    Die A-Linien werden entweder von den Wiener Linien selbst oder aber von anderen Unternehmen im Auftrag der Wiener Linien befahren. Man erkennt das an einem Schild “Im Auftrag der Wiener Linien” im Bus.
    Die Haltestellenschilder und Fahrpläne kommen bei A-Linien von den Wiener Linien und bei B-Linien von dem anderen Unternehmen (und sind dann gelb-grün).

  17.  
    max
    22. September 2009 | 11:03

    @Dan danke, das mit den B-Linien dachte ich mir schon, werde mal die Dr. Richard Webseite absurfen :)

    Aber U-Bahnen ist immer noch eigenartig :)

  18.  
    oberhamsi
    22. September 2009 | 11:09

    @max thanks, sehr cool

  19.  
    Dan
    22. September 2009 | 12:58

    @Max: Die Fahrplandaten für alles vom ICE bis zum Astax kannst du von der ÖBB online-Fahrplanauskunft bekommen-bis zu 50 Abfahrten per Abfrage.

  20.  
    Dan
    22. September 2009 | 12:59

    PS: U-Bahnen, B-Busse, Regionalbusse, Schnellbahn natürlich inklusive

  21.  
    max
    22. September 2009 | 13:00

    @Dan werde ich mir mal anschauen ob brauchbar, danke!

  22.  
    22. September 2009 | 15:13

    [...] Busse und Strassenbahnlinien von Wien ermittelt hatte (Details zur technischen Umsetzung findet man in seinem Artikel). Immerhin entstand so eine Datenbank mit 1048 Haltestellen die von 44 Buslinien, 29 [...]

  23.  
    22. September 2009 | 17:19

    Super Visualisierung – finds immer wieder spannend, was du so produzierst ;-)

  24.  
    22. September 2009 | 18:42

    nette visualisierung! gibt einen guten plastischen eindruck der oeffi versorgungsdichte!

    siehe auch:

    MBTA in Motion http://www.youtube.com/watch?v=0tuzjxEBto4
    Trainlogic http://www.trainlogic.net/sim_mbta.htm

  25.  
    22. September 2009 | 18:45

    aja, und ad Wiener Linien: die sollten ihren fahrplan als GTFS rausruecken, dann werden ihre seiten nicht gescraped.

    gutes beispiel hier in Mass: http://www.eot.state.ma.us/developers/

    behoerde arbeitet mit der developer community um zugang zu oeffentlichen verkehrsdaten zu erleichtern.

  26.  
    22. September 2009 | 19:07

    toll, toll, toll! am schönsten ist es, wenn sie sich zu großen punkten zusammenballen, bevor sie in ihrem bau verschwinden.

  27.  
    Dan
    22. September 2009 | 19:55

    Schaut euch mal an, was da in Penzing um 5:30 morgens passiert! BOOOM ;-)

  28.  
    Dan
    22. September 2009 | 20:15

    @Christian: Nachdem Google Maps die Fahrplandaten hat müsste es eigentlich eh einen GTFS geben. Vielleicht braucht man nur die ÖBB fragen?

  29.  
    22. September 2009 | 20:26

    @Dan

    Eben!

    Warum gibt der VOR (eine Landesorganisation) seine Daten als GTFS an Google weiter, aber nicht an Max, der ueber Steuern und Fahrscheine den VOR mitfinanziert?

  30.  
    Dan
    22. September 2009 | 22:44

    @Christian: Wer weiß, vielleicht braucht man nur fragen? Abgesehen davon-Google bekommt die Daten von den ÖBB und nicht vom VOR.

  31.  
    23. September 2009 | 11:21

    PS: U-Babnen, B-Busse, Regionalbusse, Schnellbahn natü5lich inllusive;

  32.  
    RolandGiersig
    23. September 2009 | 13:48

    Hochinteressant und wirklich nett, wenns jetzt noch eine zoombare Flash-Animation wäre, wärs perfekt. :-) #unbescheiden

    Übrigens gibts diese Information unter dem Titel “Echtzeitanzeige” auch im VOR: http://www03.vor.at/vorrbl/XSLT_DM_REQUEST?language=de&itdLPxx_locationServerActive=

    Wobei zu überprüfen wäre, ob die Zeiten dort genauso Echtzeit sind wie die im I-Tip.

    Und auf http://www.qando.at gibts einen Handy-Java-Client, der auch eine “Echtzeitanzeige” beherrscht, ich nehme an, dass der die Daten ebenfalls vom VOR bekommt, aber wahrscheinlich in einem besser weiterverarbeitbaren Format.

    Viel Erfolg weiterhin beim Scrapen… ;-)

  33.  
    RolandGiersig
    23. September 2009 | 13:49

    @Dan

    Um 5:30 fahren alle Nachtautobusse in die Remise. Das sieht man um ca 1 Uhr Nachts bei den Straßenbahnen an mehreren Stellen auch.

  34.  
    max
    23. September 2009 | 13:52

    @Roland danke für die VOR-Idee, wäre schon sowas für wien umgebung zu machen, mal sehen ob ich alle stationen bekomme :)

  35.  
    RolandGiersig
    23. September 2009 | 14:16

    @max Das Non-Plus-Ultra wäre (ich spinntisier mal vor mich hin):

    Die Daten per Linie aufbereiten und zwischen den Stationen interpolieren, das in einer zoombaren Flash-App anzeigen, in der man die Linien filtern kann: nur eine, nur U-Bahn/Straßenbahn/Bus.

    Mit den VOR-Daten wäre das auch dann interessant, wenn es sich nicht um Realtime-Daten, sondern nur um statische Fahrplan-Daten handelt.

    Wo hast du die Haltestellen-Geo-Daten her? Aus Google-Maps?

  36.  
    max
    23. September 2009 | 15:16

    @Roland Geodaten sind mit der Google-API ermittelt, ist wirklich interessant, einfach nur “Haltestelle” vor den Stationnamen geben und Google findet (fast) alle Stationen (ein paar Ausnahmen, bei einer STation behauptet Google beinhart das sie in “2700 Wien” ist :) )..

    Interpolieren ist ok, nur leider findest du dann die Strassenkurven nicht :)
    Wenn dann müsste man z.b. die Daten hier aus Openstreetmap nehmen.

    SIehe auch diese Karte (nach Wien zoomem).

  37.  
    Dan
    23. September 2009 | 15:26

    @max: Interpolation wäre schön ;-)
    Ich glaube, bei den meisten Tram- und Buslinien würde es nicht stören, einfach zwischen den Haltestellen linear zu interpolieren.

  38.  
    max
    23. September 2009 | 15:30

    @Dan wie schon gesagt, dass problem ist das ich keinen Bezug habe welcher Bus z.B. wann wo unterwegs ist, ich habe ja nur die Stationen als Basis und die kennen ihre Nachbarn nicht, dass macht interpolieren recht schwierig. Mit den Openstreetmap-Daten weiss man dann wie die Strecke aussieht, dass wäre dann natürlich viel einfacher.

  39.  
    RolandGiersig
    23. September 2009 | 21:07

    @max Hmm du hast doch alle Daten, musst sie nur richtig anordnen:

    12:32 – Linie XY – Station A -> (x1,y1)
    12:39 – Linie XY – Station B -> (x2,y2)

    daraus folgt 12:33 bis 12:38 – Linie XY – lineare Interpolation zwischen Stationen A und B.

  40.  
    max
    23. September 2009 | 21:11

    @Roland Jein, dazu muss ich der Datenbank erst beibringen was die Reihenfolge ist und ich gehe glaube nicht das es so einfach ist nur aufgrund der haltestellendaten einen zug verfolgen zu können, stichwort einzugfahrten, etc.

    ich denke man müsste die datenbank neu mit den fahrplänen (wenn die irgendwo anders als nur als PDF verfügbar wären) aufbauen, dann könnte man wirklich pro Straßenbahn/Bus dass zeichnen.

  41.  
    RolandGiersig
    23. September 2009 | 22:06

    OK, ich kenn deine derzeitige Datenstruktur nicht, wenn da keine Linien-Information mehr drinnen ist, wirds schwierig. Ich bin jetzt von den im VOR verfügbaren Daten ausgegangen. Letztlich bekommt man genau so eine Liste mit den drei Elementen Zeit, Linie und Haltestelle heraus, wobei man dann die Haltestelle separat in (x,y)-Koordinaten umsetzen muss. Die nächste Haltestelle ergitb sich einfach aus dem nächsten Zeitstempel für diese Linie.

    Das einzige Problem ist, wenn die Zeitstempel wie bei der U-Bahn zu eng zusammen liegen, dann kann es zur falschen Zuordnung kommen, nämlich dass man den Nachfolgezug in der vorigen Station erwischt (ähnliches Phänomen wie die Räder, die sich im Film rückwärts zu drehen scheinen… :-) ).

    Vielleicht wirds einfacher, wenn man zuerst die Strecken der einzelnen Linien zu verkehrsarmen Zeiten herausfiltert.

    Schön langsam reizt es mich, selber mal den Emacs anzuwerfen und ‘use Web::Scraper’ zu tippen… :-)

  42.  
    24. September 2009 | 13:09

    Sehr nett ;-)
    Am besten gefällt mir das Nachschattieren, wenn es Abend bzw. Morgen wird…

  43.  
    RolandGiersig
    24. September 2009 | 17:52

    Übrigens, aus dem Handy-Client auf http://www.qando.at bekommt man viele nützliche Informationen heraus, zB für Wien Listen aller Haltestellen pro Linie in der richtigen Reihenfolge… ;-)

  44.  
    Dan
    25. September 2009 | 10:21

    Werft mal einen Blick auf die Balken links oben: zur vollen Stunde steigt die Zahl der Abfahrten stark an, geht dann aber wenige Minuten später wieder stark zurück. Wieso? Es kann ja nicht so viele Linien geben, die nur einmal pro Stunde fahren und einigermaßen kurz sind. Sieht man da, wie die Busse ausgewechselt werden?

  45.  
    max
    25. September 2009 | 10:23

    @Dan das ist vor allem um 17:00, 18:00 und 19:00 so, ich denke das ist ein reagieren auf die “klassichen” Firmenschlusszeiten?

  46.  
    adi
    25. September 2009 | 20:06

    Da sieht man eindeutig, dass auch in der Nacht mehr Bedarf an Öffis gegeben wäre. (denn ich denk, die Taxis fahren in Wien genauso öfters in der Nacht als unter Tags).
    Am meisten würden sicherlich U-Bahnen nützen, wenn sie länger als bis um halb 1 fahren würden. (z.B. bis 2)

  47.  
    max
    25. September 2009 | 20:27

    @adi da bin ich mir nicht sicher, wenn dann alle öffis bis 2 in der früh. aber wichtiger wäre, so finde ich, den nachtbus-takt zu erhöhen bzw den nachtbus ausbauen, erreicht mehr gebiete als die ubahn und ist sicherlich billiger.

  48.  
    28. September 2009 | 18:39

    Super Sache Max!

    Interessant fände ich eine Visualisierung von barrierefreien Straßenbahnen und den alten Straßenbahnen und wie groß die Löcher im Intervall da sind. Das grenze nämlich bei manchen Linien an Unbenützbarkeit.

  49.  
    28. September 2009 | 23:52

    Ohne deine Leistung schmälern zu wohllen- ich find ich es für Österreich schon ziemlich schwach, dass es nicht mehr von solchen visualisierungsideen gibt und deines zu einem der meist diskutierten Beispielen wird. #Selbstkritik #machdochmalwasselbst!!! #danke

    liebe Grüsse
    Heimo

  50.  
    13. Oktober 2009 | 14:23

    24 Stunden Wienerlinien…

    Wer schon immer mal wissen wollte, wie denn die Wiener Öffis verkehren, dem sei dieser Eintrag von Max (wissenbelastet) ans Herz gelegt.

    Wie das ganze technisch funktioniert ist am besten bei Max selbst nachzulesen – doch was ist das Ergebnis?

    Da…

  51.  
    19. Oktober 2009 | 09:26

    [...] Visualisiert: 24 Stunden Wiener Linien [...]

Entschuldige, das Kommentarformular ist zurzeit geschlossen.