Kartalla - Tietoja

Viimeksi päivitetty 20.2.2016.

Yleistä

Kartalla näyttää tosiaikaisesti joukkoliikennevälineiden sijainnin HSL:n ja Liikenneviraston avoimena datana julkaisemien sijainti-, aikataulu- ja reittitietojen perusteella. Mikäli mitattua sijantia ei ole saatavilla, niin sijainti lasketaan aikataulu- ja reittitiedoista. Mitattu sijainti on saatavilla ainoastaan osasta HSL:n liikennevälineistä. Riippumatta käytetystä menetelmästä poikkeamat todelliseen sijaintiin ovat mahdollisia ja luultavia.

Sijainti esitetään kuvakkeena, jonka väri kertoo liikennevälineen tyypin (bussi, juna, raitiovaunu, metro, lautta tai lentokone). Kuvakkeiden näkyvyyttä tyypeittäin voi säätää kartan alalaidan painikkeilla. Kuvakkeen muoto on neliö minuutin ennen lähtöaikaa ja ympyrä minuutin tuloajan jälkeen. Näiden välillä muotona on kulkuvälineen kulkusuunnan osoittava nuoli. Siirtämällä osoittimen kuvakkeen päälle tulee näkyviin seuraavan esimerkin mukaisia tietoja (laskettu sijanti).

Kun käytössä on mitattu sijainti niin kuvakkeessa linjatunniste on valkoisen ympyrän sisällä. Kuvake on sitä läpikuultavampi mitä pidempi aika mittauksesta on kulunut. Aika näkyy myös Päivitys-kohdassa.

Muita karttoja

Seuraavassa on joitakin joukkoliikennevälineiden sijainnin mitatun paikkatiedon perusteella näyttäviä karttoja.

Tekninen toteutus

Kartalla muodostuu kahdesta osasta, jotka ovat gtfs2json ja selaimessa toimiva graafinen käyttöliittymä. Edellinen muokkaa GTFS-muotoisen datan jälkimmäiselle soveltuvaan muotoon. Molempien osien lähdekoodi on saatavilla GitHub-palvelussa.

gtfs2json

gtfs2json tiivistää GTFS-tiedostot (calendar.txt, calendar_dates.txt, routes.txt, shapes.txt, stop_times.txt, stops.txt, trips.txt) yhdeksi JSON-tiedostoksi. HSL:n GTFS-tiedostojen koko on noin 400-600 megatavua (ZIP-pakattuna 40-60 megatavua) ja tuotetun JSON-tiedoston koko on noin 3 megatavua. Tiivistäminen tapahtuu karsimalla GTFS-tiedostoista tarpeettomia osia ja esittämällä tarpeelliset osat tiiviimmin. gtfs2json on toteutettu Python-ohjelmointikielellä (versio 2.7).

Käyttöliittymä

Selaimessa toimiva käyttöliittymä lataa gtfs2json-ohjelman tuottaman JSON-tiedoston palvelimelta ja esittää sen perusteella joukkoliikennevälineiden sijainnin kartalla käyttäen joko Leaflet-kirjastoa (kartta-aineistona on Mapbox, OpenStreetMap tai HSL) tai Google Maps JavaScript API:a. JSON-tiedosto ladataan palvelimelta pakattuna mikäli selain tukee HTTP compression-tekniikka. Tällöin siirrettävän tiedon määrä on noin 0,5 megatavua. Käyttöliittymä on toteutettu JavaScript-ohjelmointikielellä sekä HTML-, CSS- ja SVG-tekniikoilla.

Mitattu sijaintitieto ladataan HSL:n palvelimelta JSON-muodossa käyttäen MQTT-protokollaa.

Siirtämällä osoittimen kartan alalaidan Data-sanan päälle tulee näkyviin seuraavan esimerkin mukaisia tietoja käytetystä aineistosta.

Parametrit

Käyttöliittymän toimintaa voi ohjata seuraavilla URL-parametreillä.

Esimerkkejä parametrien käytöstä.

Yhteystiedot

Panu Ranta, panu.ranta@iki.fi