Архиве ознака: примена

ГСП-ових величанствених 5

Сада када је увоз свих станица у Београду готов, о чему смо већ причали, ред је да урадимо и неку малу анализу тих линија у Београду. Сигурно знате оне глупе сајтове по нету које имају чланке типа „Топ 10 дестинација“, „Топ 10 најбољих слушалица“ и сл. По угледу на њих, представљамо Вам топ 5 линија у Београду по различитим критеријумима:) За сваки од критеријума смо сакрили одговоре, јер Вам можда буде занимљиво да погађате све ово!

Сви одговори имају везу на openstreetmap.org сајт, да можете и сами да наставите да истражујете! За одговоре који имају смисла за оба смера, дат је линк само ка једном смеру (а други смер није ни разматран у топ 5).

Најдужа линија

Да кренемо од најосновнијих ствари. Да ли сте се можда икада запитали која је најдужа линија у Београду? Да ли можда можете и да погодите пре него што кликнете на одговор?

Одговоре можете видети овде:

 

Иначе, у анализи је коришћена дужа од 2 руте, чисто да буде јасно.

Ипак, ова анализа није фер ако се гледа уже градско језгро, па хајде исто питање, али само без троцифрених превоза! Дакле, која су најдуже линије у Београду ако не гледамо приградске линије!?

 

Можемо поставити и обрнуто питање – које су то најкраће линије у Београду? Може се претпоставити да ће то бити неке линије у ужем центру Београда, али које? Размислите да убодете бар једну у топ 5, па кликните:)

 

Ставили смо и 6. линију овде, пошто једна од ових ради само викендом, па није фер. Кладим се да нисте ово баш очекивали:)

Најдужа линија (временски)

Нисмо завршили са дужином. У српском језику дужина има више значења, сад ћемо да погађамо које су најдуже и најкраће линије, али по трајању. Ако сте помислили да су најдуже линије по киломотражи уједно и најдуже по трајању, не бисте били баш у праву. Само једна најдужа линија по километражи је успела да уђе у топ 5 по трајању! Ето мале помоћи:)

 

Са друге стране, најкраће линије по километражи су успеле да буду најкраће и по трајању! То ваљда има смисла јер на тако кратким линијама нема места за претицање (ни на табели ни на друму:). Једино што овде можете да погађате је редослед. Али да не би било комплетно незанимљиво, укључено је и 6. место на коме су чак 10 линија које деле то 6. место.

 

Најчешћа/најређа линија

Знате оно кад чекате на станици, а Вашег аутобуса нема, као да је аспирин, па иде на сваких 6 сати? Ако се возите следећим линијама, никада нећете чекати, пошто иду на сваких 5 минута! Представљамо Вам топ 5 у 5!

 

Иначе, за интервал је узета медијана полазака радним данима, што би углавном били радни сати од 9 до 5 поподне. А обрнуто, које су то линије које иду као аспирин? Да ли има неко ко иде на 6 сати? Сазнајте када кликнете овде:

 

Линија са највећим бројем станица

Која линија највише стаје и креће? На којим линијама су се механизми за отварање врата највише похабали. Да ли су то исте линије као и најдуже линије, шта мислите? Да ли можете да претпоставите колико највише станица једна линија може да има. Одговоре на сва Ваша питања има следећа табела:

 

У табели изнад је приказан само један смер по линији, претпоставља се да ће и други смер да има доста станица.

Већ сте навикли од раније, сад гледамо исто то, само на другу страну. Колико мало линија може да има станица?

 

По обишлим странама река

Овај наслов је можда збуњујући, али своди са на ово – у Београду има две реке и оне деле Београд на три дела, три обале – стари град, новобеоградску страну и „банатски“ део (где је Борча). Размислите добро – да ли их има и, ако их има – који аутобуси имају ту част да прођу све три ове обале?!

 

Станице са највише линија

ОК, да оставимо мало линије на миру, да се фокусирамо на станице. У Београду званично има 3078 станица, а од тога чак 1302 постоји само због једне линије. Кроз остале станице пролази више од једне линије. Шта мислите, колико линија највише пролази кроз неку станицу и које су то?

 

Интересантно је да је само једна станица са овог списка у исто време и окретница.

Најпопуларније/најусамљеније линије

Уф, ово ће бити тешко дефинисати и објаснити. Које линије пролазе кроз станице кроз које пролазе и друге линије. Тј. да је већина станица на рути неке линије дом и другим линијама. Права дефиниција која је коришћена да се нађу топ 5 је – најпопуларнија линија је она којој је просек броја других линија на станицама на траси највећи. Да видимо које су то:

 

Не знам јел сте очекивали ово, али ја нисам – очекивао сам линије из уског центра са малим бројем станица. Хајмо исто то, али за најусамљеније линије, тј. линије које иду по станицама где нема никог другог осим њих. Очекујемо да просек по станици буде мањи од 1 овде (јер нема других линија осим те усамљене).

 

Погледајте, молим Вас, ове линије, који су ово вукови пустињаци. Ове линије иду где ниједна друга линија не сме.

Линија са највише обиђених кружних токова

Са којих линија возачи морају да мотају своје волане више од својих колега:) На којим линијама шофери имају најбољи бицепс. Топ 5 станица по броју кружних токова на својој траси

 

Кружне линије

Београд може да се подичи са пар кружних траса. Да ли знате колико их има и које су? Покушајте колико можете да их набројите:) Ево мала помоћ – нема их 5:)

 

Закључак

Текст је мало шаљив, али покушај је био да се покаже шта се све може истражити и шта све можемо интересантно открити када су подаци слободни. Чим је GTFS града Београда постао отворен и слободан за увоз, увезен је у OSM пројекат! Од овог су имали користи и град Београд (који је добио све грешке које смо нашли) и OSM платформа која сад има тачније податке. А од овог корист имамо сви ми који користимо OSM (директно и индиректно кроз различите софтвере), а ево и сад кад смо могли да сазнамо још понешто о јавном превозу у Београду! Овде морам још једном да поменем пројекат UNDP-а „Отворени подаци – отворене могућности“ и Андреју Глушчевић која је као експерт радила са 6 локалних самоуправа на отварању података о јавном превозу, без којих ово ништа не би било могуће!

Надамо се да Вам је ова листа била интересантна и да сте бар нешто ново открили данас!

Српски фонтови на рендеринг серверу

Пре скоро годину дана, корисник Јован је питао на форуму како да решимо проблем српских фонтова (словолика) на OSM-у. Наиме, нека слова, нарочито у курзиву изгледају као руска слова, а не српска („б”, „п”, „т”, „д”…). Нажалост, иако подршка за српске фонтове постоји, као што се може видети са Пеђиног блога, као и коментара са тог блога, на OpenStreetMap серверима и даље се рендерује руска верзија слова у курзиву – то је просто зато што рендеринг сервер не може да зна да ли треба да рендерује српску или руску ћирилицу.

Подразумевани фонт који долази уз „openstreetmap-carto” стил – Noto Sans, дефинитивно има подршку за српска слова. Ово је лако проверити. Отворите Word или OpenOffice Writer, одаберите овај фонт и откуцајте мала слова у курзиву. Сада мењајте језик пасуса са српског на енглески (или било који други језик) и приметите како се мала курзивна слова мењају како Writer примећује да се мења језик. Дакле, Noto Sans фонт није проблем, он има у себи српске верзије слова, проблем је до Mapnik рендеринга.

Пошто сам се уверио да не постоји подешавање којим се може подесити „locale” приликом исцртавања фонтова (зато што Mapnik-ов елемент „TextSymbolizer” просто нема подршку за то (као што се види овде), одлучио сам се да прост променимо фонт у рендерингу и видим на шта ће то да личи. Ово решење ће радити само за растерске слике, тј. невекторске карте, каква је OpenStreetMap карта. Добри фонтови који имају подршку за српска курзивна слова (тако што игноришу „locale” и увек исцртавају српска слова) се могу наћи на сајту http://www.tipometar.org/. Ово није најбољи начин да се направи фонт, али нама је једини могућ. По мом лаичком мишљењу, да би се добио добар изглед карте, треба тражити сансерифне фонтове („Sans”), и колико сам их испробао, најбоље ми је изгледао фонт „Resavska BG” Ево пригодног примера како изгледа исцртавање мапе на примерима слова „д”, „б” и „т” (кликните на слику да је видите у пуној величини):

Пре:После:А ево и како би изгледао рендеринг целог Београда ако би се ишло са овим фонтом (клик за пуну величину):

Како подесити сервер

Претпоставља се да користите Mapnik за рендеровање сличица (tile-ова), као и можда „openstreetmap-carto” за дефинисање стила, као и да сте на Linux-у. Све локације фајлова у даљем тексту ће бити исте као и са овог водича за дизање tile сервера. Прво треба преузети жељени фонт и инсталирати га (можда баш са http://www.tipometar.org/). Пазите да фонт морате инсталирати у „/usr/share/fonts”. Остале варијанте (у „~/.local/share/fonts” или у „/usr/local/share/fonts”) не пију воду пошто Mapnik не гледа те локације! Ја иначе нисам имао успеха са .otf фонтовима, већ су ми радили само .ttf фонтови. Да бисте се уверили да Mapnik може да види ваш фонт, откуцајте нешто овако:

$ python3
>>> from mapnik import FontEngine
>>> print('\n'.join(list(FontEngine.face_names())))

У списку изнад треба да има и вашег новоинсталираног фонта.

Када имате фонт, а ако користите „openstreetmap-carto”, измените фајл „style/fonts.mms” да укључи овај фонт као први избор. Потребно га је укључити и за курзив. Diff фајл би изгледао некако овако:

diff --git a/style/fonts.mss b/style/fonts.mss
index 1027025..f0e43e0 100644
--- a/style/fonts.mss
+++ b/style/fonts.mss
@@ -75,7 +75,11 @@ support SBIT TTF.
/*
A regular style.
*/
[email protected]: "Noto Sans Regular",
[email protected]: "Resavska BG Sans",
+ "Noto Sans Regular",
"Noto Sans CJK JP Regular",
"Noto Sans Adlam Regular",
"Noto Sans Adlam Unjoined Regular",
@@ -152,7 +156,11 @@ A regular style.
A bold style is available for almost all scripts. Bold text is heavier than
regular text and can be used for emphasis. Fallback is a regular style.
*/
[email protected]: "Noto Sans Bold",
[email protected]: "Resavska BG Sans Bold",
+ "Noto Sans Bold",
"Noto Sans CJK JP Bold",
"Noto Sans Armenian Bold",
"Noto Sans Bengali UI Bold",
@@ -189,4 +197,9 @@ regular text and can be used for emphasis. Fallback is a regular style.
Italics are only available for the base font, not the other scripts.
For a considerable number of labels this style will make no difference to the regular style.
*/
[email protected]: "Noto Sans Italic", @book-fonts;
[email protected]: "Resavska BG Sans Italic",
+ "Noto Sans Italic",
+ @book-fonts;

Поново регенеришите „mapnik.xml” командом „carto project.mml > mapnik.xml” (ова команда треба да вам буде позната од раније – ако није, могуће да радите нешто погрешно) и онда рестартујте „renderd” сервис (нпр. са „sudo /etc/init.d/renderd restart”), и обришите све постојеће tile-ове (нпр. са „rm -rf /var/lib/mod_tile/ajt/”). Требало би да добијете нови фонт при поновом рендеровању карте.

Уколико не користите „openstreetmap-carto” већ само чисти Mapnik, или Mapnik у некој другој варијанти, потребно је да нађете ваш „mapnik.xml” фајл (његову локацију треба да можете да видите у фајлу „/usr/local/etc/renderd.conf” под XML уносом) и да у њему, негде на почетку додате ваше фонтове. Скупови фонтова су обично негде на почетку и дефинисани су у „<FontSet>” XML елементу. Додајте нови фонт у све те елементе (пазите где се тражи подебљан, где курзив, а где обичан фонт) и опет рестартујте „renderd” сервис и очистите старе сличице.

Уживајте у српским словима!:)