Оријентација улица у градовима Србије

Видевши овај пост [1] на Џеф Боинговом [2] блогу, одмах сам пожелео да урадим сличну ствар са градовима по мом избору, а и да се поиграм са одличним osmnx [3] алатом. Пожељно је прочитати овај пост пре настављања, али у сваком случају ево сижеа.

О OSMnx библиотеци

OSMnx је Python библиотека која омогућава лако добављање просторних геометрија мрежа улица градова и држава над којим је могуће правити пројекције, визуализације, анализе и сл. Ослања се на OpenStreetMap [4] API. Библиотека је добро структуирана тако да је могуће свашта нешто урадити са једном или две линије кода.

На пример, да би се добио приказ мрежа улица Београда може да се уради овако нешто:

import osmnx as ox
G = ox.graph_from_place('Belgrade, Serbia')
ox.plot_graph(G)

Мрежа улица Београда

Ако нам треба нацрт административних граница, рецимо општине Нови Београд:

G = ox.gdf_from_place('New Belgrade Municipality, Belgrade, Serbia')
ox.plot_shape(ox.project_gdf(G))

Административна граница Новог Београда

Ово је само делић могућности ове библиотеке и саветујем да се погледа детаљније. Пратите линкове из овог поста за више информација. Да се позабавимо оријентацијом улица...

Оријентација улица

Једна од ствари које могу да се ураде уз помоћ ове библиотеке, а која је и описана у поменутом блогу, јесте извлачење информација о оријентацији улица у градовима. Оријентација подразумева правац простирања улице у односу на стране света. Уз мало математике и других корисних Python библиотека могуће је представити ове податке помоћу неког графика ради лакшег разумевања. У овом случају то је поларни хистограм. На том графику правац сваке линије означава оријентацију у односу на стране света, а дужина линије означава фреквенцију појављивања улица са том оријентацијом.

Подешавање окружења за овај задатак је лако. Треба инсталирати OSMnx у Python окружење помоћу pip-а или conda-е, а овај пост [5] објашњава како. Постоји гомила примера коришћења ове библиоке у форми Jupyter докумената овде [6]. За израду ових графика коришћен је овај [7] пример мада сам га ја преписао у једну скрипту јер ми је било лакше. Можете је наћи овде [8] [9].

Наравно, Београд је био први на реду.

Улице Београда

Након тога сам се одлучио да одрадим оријентације улица за све веће градове у Србији. Пошто их је доста, поделио сам их у неколико целина [10].

Војводина

Централна Србија (са Београдом)

Јужна Србија

Новопазарски регион

Косово

Закључак

Србија је уникатна земља са јединственом геофрафијом и са јединственoм историјом. Разни геополитички моменти су имали утицај на сваки вид живота њених грађана, а један од њих је и сам начин на који су градови зидани. Распоред улица је различит за скоро сваки град што се и види са приказаних слика. Сигуран сам да је могуће пронаћи паралелу између облика/расподела улица једног града и народа који је ту живео, као и разних историјских и политичких момената који су се ту појављивали. По мом мишљењу ово је једна веома интересантна тема за изучавање.

Не покушавам да оставим посао незавршен односно да дигнем руке у стилу "ја сам своје одрадио", али на први поглед има јако мало ресурса на Интернету који се баве темом урбанизма у Србији тако да је тешко да се нађу подаци који би могли да се упаре са овим сликама и информацијама које оне нуде. Са друге стране, постоји доста књига на ову тему и покушаћу да их пронађем иако то захтева доста времена. Све ново у односу на ову тему ћу писати овде. У међувремену надам се да ће неко бити инспирисан да покрене било какво истраживање (или већ јесте...). Једна ствар је сигурна - OSMnx је алат за тај посао.

[1] Пост о оријентацији улица у градовима

[2] Џеф Боингов Твитер

[3] osmnx библиотека

[4] OpenStreetMap

[5] Инсталација osmnx алата

[6] osmnx примери

[7] osmnx пример оријентација улица у градовима

[8] Моја osmnx скрипта

[9] Може се приметити да сам за неке градове морао да додајем кључну реч 'municipality' за добављање геоподатака. То је зато што информација за саме градове није доступна па је критична област морала да се повећа. Ово може да утиче на сам крајњи резултат јер се повећава и број улица које се испитују.

[10] Подела није рађена ни по каквом политичком, религијском или етничком критеријуму, нашао сам да ми је оваква подела олакшавала посао.