De belles cartes symboliques des transports
publié le , mis à jour🇬🇧 Beautiful transport maps 🇬🇧
Dans la version en ligne, on a mis en place les cartes symboliques des réseaux de transport, pré-calculés à chaque MAJ des GTFS.
C'est loin d'être satisfaisant, même si ça peut déjà être utile. Le travail continue !
🔴 Prioritaire
On a déjà une grosse richesse en termes de réseaux couverts, mais l'affichage des plans est mauvaise, et on en pâtis à la fois sur la découverte de l'offre et sur le dev.
La carte générale est inutilisable, bien trop chargée surtout depuis que flixbus et l'aéroport de Nantes apparaissent, sans compter les TGV.
Il faut qu'on éditorialise la vue de base des plans. Le plus important, c'est les réseaux de transport locaux et le train. Virer l'avion en filtrant l'agence par exemple. Proposer deux vues : SNCF (TER/TGV etc) et locaux. Afficher les locaux de base en zone gtfsArea.
À faire :
- [x] corriger les problèmes de MAJ des GTFS sur le serveur
- améliorer la perf de la génération de cartes
- explorer l'utilisation de tippiecanoe -> pmtiles -> maplibre source layer pour afficher les lignes de transport en commun plutôt que la surcouche geojson pas si facile à gérer côté client. Il se pourrait que j'aie recodé ce qui était déjà fait :sweat_smile:. Mais on risque de se relancer dans pas mal de dev, alors que l'actuel marche bien. Peu prioritaire je dirai, mais intéressant.
- [ ] mettre le mode transport dans la liste des fonds de carte et améliorer l'icône fond de carte. Un icône en moins et c'est totalement pertinent de le considérer comme un fond de carte
- enlever les lignes de train du style de fond de base, maintenant qu'on a la carte national de voyage, et la carte nationale de rail géographique
- [ ] Quand en mode transport on clique sur une gare ou un arrêt, scotcher le clic pour ne pas faire la partie piétonne ou TeC manquant si gare, comme ça les trajets en train dans toute la France sont possibles
- [ ] il manque quelques interactions, comme les clics sur les lignes après clic sur une gare
- suppression des searchParams après interaction, ça traine actuellement
- réafficher les encarts arrêt de bus sur la carte à fort niveau de zoom avec le prochain départ et un clic pour ouvrir l'arrêt
- [ ] régler la taille visuelle des gares. Elles sont actuellement bien trop grosses
- inspecter les réseaux un à un pour repérer les incohérences. Je crois en avoir vu dans le sud qui sont moches
- revoir l'algo de création de geojson en prenant en compte la direction de la route dans le listing des points, et retenter l'utilisation de
topopour intégrer les stops que mostStops ne peut pas trouver (ligne sans omnibus total) - créer des features précises basées sur les stopIds en plus des features basées sur les stopNames, à afficher au zoom sur la carte ou au clic sur une ligne. Tester si le même principe de création du geojson de la route fonctionne. Pourrait être le bordel dans certains cas où la route a des trips très différents voir contradictoires. Sinon, reposer sur les shapes précises fournies. Je découvre l'attribut "parentStation". Par exemple, StopPoint:OCEOUIGO-87681825 a pour parentStation StopArea:OCE87681825. Ça pourrait être très intéressant ! Unifier la vue des lignes au clic sur l'arrêt OSM et la vue réseau.
- [ ] ajouter blablabus et flixbus (si leur gtfs marche à nouveau), comment s'intègrent-ils à la vue France en cohabitation avec le train ?
- [ ] améliorer l'algo de création de plans SNCF par regroupement de lignes https://github.com/laem/futureco/issues/295
Bonus
- [x] améliorer la perf, notamment via #226
- On affiche déjà les routes au clic, mais il faut également afficher les trips, comme on le fait pour les bus, avec les horaires et une gestion de l'indication de la fréquence. Donc gérer à la fois le mode "je fais un trajet à telle date" et le mode "je me renseigne sur la régularité de cette ligne". S'inspirer de ce qu'a fait korrigo.bzh, je n'ai pas vu d'autres exemples en ligne
- [ ] offset ? Même latitude cartagène ne le fait pas pour les plans dynamiques "v3" de gros réseaux comme Star. blog de 2017 qui explique et transit. Et bien sûr s'inspirer de Loom, mais qui ne peut être utilisé qu'en mode geographique. Mais je suis définitivement pas convaincu de l'intérêt du tracé des lignes de bus ou de train sur la base des shapes réelles, qui soit n'apportent qu'une information inutile (genre le rond-point utilisé par le bus mais sans aucun arrêt est totalement inutile) voir trompeuses (une ligne qui en suit une autre mais qui ne fait pas d'arrêt quand l'autre en fait 3 !). En fait, un offset seulement pour les lignes qui font arrêt A -> arrêt B pourrait marcher, mais il faudra ensuite recoller les bouts à l'arrêt, boule blanche assez large pour les accommoder. Donc peut-être : utiliser loom mais sur les shapes GTFS symboliques ? Idéalement on courberait les lignes aussi pour que le plan symbolique soit plus beau. On pourrait les courber uniquement quand elles sont seules entre deux stopNames.
Objectifs :
- [ ] Comparer Cartes et la carte interactive du réseau MAT de Saint-Malo. L'expérience sur Cartes doit être au moins aussi bonne https://www.reseau-mat.fr/se-deplacer/carte-interactive
- comparer Cartes au plan tram d'Apple maps #170
laem
Bel exemple de superposition de tracé topographique vs topologique
laem
Voir cette question que j'ai posée à l.équipe maplibre.
laem
J'aimerais bien tester ce genre d'interpolation : http://scaledinnovation.com/analytics/splines/aboutSplines.html Ça rendrait les tracés moins anguleux. Sauf que ça utilise le contexte côté client. Il faudrait ça mais sur du geojson.
https://en.wikipedia.org/wiki/Cubic_Hermite_spline#Cardinal_spline
Mais à voir, car l'avantage des lignes anguleuses c'est qu'en marquant la différence avec le tracé réel, on comprend direct que c'est symbolique.
Peut-être que c'est ça qu'il faut https://www.npmjs.com/package/bezier-interpolation
laem
Résultat des splines :
Il n'y a pas de vérité sur la meilleure représentation. En tout cas, le spline donne quelque chose intermédiaire.
laem
Autre exemple avec des bus, donc avec des arrêts plus fréquents.
laem
This issue should be re-worked to build a plan for the next iteration.
I'd say we need ⌚️3 days for an iteration that would include the gathering of stops by name / GTFS group on low zoom and the disambiguation on high zoom.
laem
We also need to work on the content box that lets the user filter routes by type (night bus, school bus, subway, etc) and visualise one route in particular.
⌚️2 days
laem
Breizhgo vient de sortir un nouveau site qui a une bien meilleure carte des transports !
Elle met beaucoup de temps à se charger, et les problèmes de shapes que l'on a semblent aussi présents, mais ça rend bien.
Proposer l'équivalent mais sur toute la France, ça ne peut que marcher :)
laem
Pas convaincu cela dit par leur représentation symbolique des lignes parallèles. C'est un problème compliqué mais qui peut être résolu d'une meilleure façon je pense.
Niquarl
Leur ligne parrallèle me font penser aux cartes metro honnêtement. Je pense ça parle aux gens sinon que proposer d'autres une ligne en tiret multicolore?
etienneJr
@Niquarl wrote in https://codeberg.org/cartes/web/issues/261#issuecomment-12217551:
Leur ligne parrallèle me font penser aux cartes metro honnêtement. Je pense ça parle aux gens sinon que proposer d'autres une ligne en tiret multicolore?
Pour les lignes parallèles, ton message me donne l'impression que tu n'as pas vu que c'était déjà le cas. Exemple à Nantes : https://cartes.app/?style=transports&gamme=urbain&type+de+train=tout&filtre=plan+g%C3%A9n%C3%A9ral#15.03/47.21411/-1.55411
Le ticket est encore ouvert car il reste plein d'autres choses listées ici qui ne sont pas encore faites.