2013. január 30., szerda

Dunaújvárosi járás (pgrouting)

Jó rég nem írtam semmit, nade most.
Van egy kitűnő blog, amelyik a pg_routing használatát mutatja be tüzetesen.
A pg_routing egy postgresql kiegészítés ami adatbázis szinten olyan feladatok megoldásában segít, mint pl megkeresi a legrövidebb utat két pont között, vagy megmutatja adott távolság kerettel mekkora utat tudnánk bejárni.
Szerintem a blogban mindent nagyon jól leírnak az eszköz használatáról, ezért itt csak néhány saját megjegyzést írok le.

A térbeli adatokat innen szedtem le. Valaki volt olyan jó fej, és feltöltötte a járásokat az osm adatbázisba, tisztelet előtte!!! Fontos, hogy nem shp fájlt, hanem ezt az állományt kell az adatbázisba tölteni az osm2pgsql program segítségével. 

A vonalas objektumokból azok az utak, amelyeknél a highway érték nem NULL. A felület objektumoknál pedig ahol az administrative oszlop nem NULL és a level 8 (település) vagy 10 (járás). Ezután megszűrtem a a Dunaújvárosi járásra az úthálózatot (különben a pg_routing beállítása eltartott volna jóideig).
Mielőtt a blog iránymutatásait követtem volna szegmensekre bontottam az úthálózatot, mivel több helyen a kereszteződések nem voltak vonalvégpontok.

SELECT ST_SETSRID( ST_MakeLine(sp,ep),900913 ) as way
INTO planet_osm_highway_segments
FROM
(SELECT
      ST_PointN(way, generate_series(1, ST_NPoints(way)-1)) as sp,
      ST_PointN(way, generate_series(2, ST_NPoints(way)  )) as ep
FROM
planet_osm_highway) as valami;


Az eurostat honlapjáról letöltöttem a népességrácsot, ami egy "új" statisztikai megközelítése a lakott és nem lakott területek mérésének.  Ez az állomány az eu vetületi rendszerében van (EPSG:3035), amit átváltottam EPSG:900913-ba.


Dunaújvárosi járás így néz ki. Itt ki lehet nagyítani.
Itt ki lehet nagyítani. A járás 14 településből áll, Dunaújváros a járásközpont. Járások - ahogyan én levettem - okmányiroda és "vonzáskörzete". Ez persze nem jelenti azt, hogy csak ezekből a településekből járnának be például dolgozni az emberek. Érdemes megnézni a teir ingázás webes térképét mennyire nem követi az ingázást a járás közigazgatási határvonala. 
Itt ki lehet nagyítani. Ezen az utosó térképen az látható, az okmányirodától számítva mekkora távolságot kell megtenni közúton, hogy beérjen az ember. Piros szín azokat a népességrácsokat jelöli ahonnan legalább 40km-t, a zöld pedig azt ahonnan legfeljebb 10km-t kell utazni a célig (a színek 10 km-es elérési távolságonként változnak).
Azért az látható, hogy a távolság nem feltétlenül azonos az idő távolsággal. Ezt annak komplikáltsága miatt egyenlőre nem nagyon tudom, hogy miként kellene kezelni (pl autópálya, vasút, buszközlekedés stb).

2 megjegyzés:

  1. Valaki volt olyan jó fej, és feltöltötte a járásokat az osm adatbázisba, tisztelet előtte!!!

    Köszönöm!

    Dömcsi

    VálaszTörlés