PTNA - News: GTFS-Analyse

Hi Rainer,

sehr gut, das hält mich beschäftigt.

  • KVV ist auch bei PTNA-Analyse noch nicht drin, das kann ich nachholen.

  • VBB ist zwar drin, aber die Liste der erwarteten Linien ist so gut wie leer, d.h. derzeit nur eine IST-Analyse.

  • GTFS ist nicht gleich GTFS ist nicht gleich GTFS … jeder interpretiert den Standard wohl ein wenig anders.

  • GTFS-Aggregation für den VRR (Sqlite-DB 330 MB!) erstmal nach 6 Stunden Laufzeit abgebrochen, ein paar printf() eingebaut um zu sehen, ob der überhaupt was sinnvolles tut, neu gestartet.

  • Miche hat mir ein JavaScript geschickt, mit dem man Routen in GPX ausgeben kann … :slight_smile:

  • Die Liste der existierenden Linien kann man ja für PTNA aus GTFS generieren, das mach’ ich dann auch mal …

Gruß,
Toni

AVV: http://opendata.avv.de/current_GTFS/ (gemeinfrei/CC0)

Danke und prima … jetzt geht’s aber los.

Wie beim VRR sind hier auch shapes.txt dabei - das wird noch einmal ein Kapitel für sich!

SQLite-DB von AVV hat die gleiche Größe wie bei MVV,

D.h. Aggregation sollte in 20 Minuten durch sein, danach noch ein wenig Feintuning, … aber noch ohne shapes.txt :frowning:

Update:

  • AVV ist nun drin, aber ohne SPNV und noch ohne shapes
    ** SPNV scheint in GTFS nicht korrekt abgelegt zu sein, einige route_id in routes.txt gibt es doppelt (sollte UNIQUE sein)

  • VBB ist in Arbeit, Aggregierung wird wohl > 10 Stunden laufen: 1280 Routen, 203701 Trips

  • VRR ist in Arbeit, Aggregierung wird wohl ~ 10 Stunden laufen: 1825 Routen, 139344 Trips

  • KVV macht Probleme, routes.txt und trips.txt scheint mit dem Feld ‘route_id’ nicht zu klappen … ‘no such column’

*** Analyse implementiert: “welche Variante Teilroute welcher anderen Variante(n) ist.**”

Alles in Allem: GTFS ist nicht gleich GTFS ist nicht gleich GTFS … jeder Datensatz eines neuen Verbundes bringt wieder eine Überraschung mit sich.

Update:

GTFS ist nicht wie Klopapier und Trockenhefe, es gibt Nachschub:
GTFS Daten BaWü
:wink:

Ufff :confused: aber das scheinen nicht so dicke Dinger wie VRR und VBB zu sein.

Als Nächstes will ich mich an die Shapes machen, denn die sind für OSM ja wichtig.
Sie beschreiben den exakten Fahrverlauf eines Busses, … mit allen Abzweigungen, Abbiegungen … und nicht nur die Haltestellen.

Ein “GPX-Download” soll draus werden, und evtl. auf einer Karte zeigen, …

Gruß,
Toni

Update:

Wenn shape Daten vorhanden sind, d.h. die Fahrtstrecke ist bekannt, so ist diese als Route in den GPX Daten enthalten. Die Way-Points sind die Haltestellen.

N.B.: Bitte beachten, dass die GTFS-Daten auch Fehler enthalten können, d.h. u.A. Positionen von Haltestellen stimmen nicht mit denen in OSM überein - warum auch immer.

ahh jetzt sieht man auch Teilrouten :slight_smile: Stimmt der 262 hat nur 4 Varianten nicht 6 Varianten :slight_smile:

https://ptna.openstreetmap.de/results/DE/BY/DE-BY-MVV-Analysis.html#A2.5.6.1

https://ptna.openstreetmap.de/gtfs/DE/trips.php?network=DE-BY-MVV&route_id=19-262-s20-1

Besten Dank für deinen Einsatz.

Den VRS könntest du gelegentlich mal aufnehmen.
https://www.vrs.de/fahren/fahrplanauskunft/opendata-/-openservice
Das öffentlich zugängliche Internetangebot unter vrs.de ist für die Benutzung in osm freigegeben.

Gruß, Axel

In Vorbereitung, wird noch ein paar Stunden dauern mit der Aggregierung.

… und der Mitteldeutsche Verkehrsverbund MDV https://www.mdv.de/service/downloads/, ganz unten unter Open Data.

Dem schließe ich mich einfach mal an.

Bitte, gerne geschehen.

Die Verbünde VHB, MDV, KVV VRS, … sind nun drin. Die anderen von BaWü kommen die nächsten Tage.

KVV hatte noch rumgezickt: BOM von UTF-8 - man beachte den letzten Satz.

Update:

  • GPX-Download : dieser Button erzeug eine GPX-Datei mit der Fahrstrecke des Busses, … wenn ‘shape’-Daten vorhanden sind, so entspricht das dem genauen Fahrweg und und nicht nur der Luftlinie zwischen den Haltestellen.

  • Download als CSV-Liste für PTNA : dieser Button erzeugt eine CSV-Liste als Input für de OSM-Analyse mit PTNA.

Den zweiten Punkt habe ich mit KVV durchgezogen, VBB steht noch aus.

Update:

Die Analyse einer einzelnen Fahrt (trip) zeigt diese Fahrt nun auch auf einer Karte.

Sind GTFS-shape Daten vorhanden, so sollte das der tatsächlichen Fahrstrecke entsprechen, andernfalls der Luftlinie zwischen den Haltestellen.

Beispiel: https://ptna.openstreetmap.de/gtfs/DE/single-trip.php?network=DE-BW-KV.SHA&trip_id=65.T0.10-1-j20-1.15.R

Ich habe bewusst nur die Nummer der Haltestellen genommen, da das Bild sonst u.U. zu unübersichtlich wird. Ein Klick auf einen Marker zeigt zusätzlich den Namen der Haltestelle.

Ein Problem bleibt zu lösen, siehe https://ptna.openstreetmap.de/gtfs/DE/single-trip.php?network=DE-BW-RAB&trip_id=1.T2.9-1-20a-4.9.H
Die Haltestellen 1 und 19 bzw. 2 und 20 sind identisch, als Marker wird derzeit jedoch nur 19 bzw. 20 angezeigt (der jeweils andere liegt darunter verborgen).

Problem gelöst.

Ja sehr schön :sunglasses:

jetzt könnte man noch… für josm-Nutzer eine Overpass-Abfrage in die Hand drücken… um die Haltestellen herunter zu laden in einem schwung… so in der Art:

http://overpass-turbo.eu/s/Syr

Aber Relationen erstellen hat jeder so seine eigenen vorgehensweisen… :confused: … oder alle Haltestellen in einer Routing abfrage packen :slight_smile:

Gruß Miche

Gute Idee mit Overpass: evtl. weniger als 50m drumherum und wenn shape-Daten vorhanden, dann ebenfalls 1 - max. 2m um diese Punkte herum - was dann aber zu einer Mengenfrage, zu einem Problem der zu vielen Unterabfragen führen kann.

Eine Routingabfrage über alle Haltestellen: machbar, aber notwendig nur wenn keine shape-Daten vorhanden sind.

Gruß
Toni

Ja den Abstand kann man auch kleiner machen… war nur zum testen :slight_smile:

Anhand der Shape-Daten das auch zu machen… ist eine Wissenschaft für sich g… geht… aber

An Kreuzungen bekommt man viel beifang ab… abbiegende Wege usw. man kann das ganze auf den darauffolgenden Note filtern dann fällt viel beifang weg, aber dazu muss das shape gut mit dem aktuellen OSM Datenbestand zusammenpassen. Man kann aber auch vorher das shape nehmen und neu verrouten… also ersten und letzten Punkt nehmen und möglichst viele zwischen zwischenpunkte und damit Routing betreiben… dann hat man ein neues shape das besser mit osm zusammenpasst :wink:

Gruß Miche