Bachelor's Thesis

Web-based Library of Graphical Components for Council Voting Data Visualisation

Final Thesis 2.12 MB

Author of thesis: Bc. Marcin Sochacki

Acad. year: 2024/2025

Supervisor: Ing. Jiří Hynek, Ph.D.

Reviewer: Ing. Kristýna Zaklová

Abstract:

This bachelor's thesis focuses on the design and implementation of a web-based library of visualization components for displaying data from municipal and regional council voting. The components are designed to be universally reusable, easily configurable through parameters, and to support a functional approach to data handling. The library was integrated into the Zastupko.cz system, where the components were tested on real-world data from regions. The result is a set of flexible components that make it easier for developers to work with data, improve the clarity of visual outputs, and contribute to greater transparency in local government decision-making.

Keywords:

data visualization, council voting, web components, open data, React, Chart.js, D3.js

Date of defence

19.06.2025

Result of the defence

Defended (thesis was successfully defended)

znamkaCznamka

Grading

C

Process of defence

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm C.

Topics for thesis defence

  1. Zvažoval jste využití nějaké SVG knihovny pro Vaše komponenty? Pokud ano, o jakou knihovnu se jednalo a proč jste nakonec u většiny komponent použil Chart.js?
  2. Můžete stručně vysvětlit podstatu a přínos Vaší úpravy mapové vizualizace?
  3. Jakým způsobem získáváte data?

Language of thesis

Czech

Faculty

Department

Study programme

Information Technology (BIT)

Composition of Committee

prof. Dr. Ing. Jan Černocký (předseda)
Ing. Jiří Hynek, Ph.D. (člen)
Ing. Vojtěch Mrázek, Ph.D. (člen)
doc. Ing. Martin Čadík, Ph.D. (člen)
Ing. Vojtěch Havlena, Ph.D. (člen)

Supervisor’s report
Ing. Jiří Hynek, Ph.D.

Student byl aktivní během celého akademického roku. Vytvořil knihovnu grafických elementů, které mohou být využitelné v projektu Zastupko.cz. Navrhuji hodnocení stupněm B.

Evaluation criteria Verbal classification
Informace k zadání

Práce vznikla ve spolupráci s projektem Zastupko.cz. Úkolem bylo analyzovat požadavky na vizualizaci dat z hlasování samospráv v kombinaci s daty ze statistických úřadů a vytvořit knihovnu grafických elementů vhodných pro vizualizaci takových dat. Student prostudoval principy vizualizace dat a současné technologie pro vizualizaci dat na webu. Seznámil se s knihovnou D3.js a knihovnami pro tvorbu obecných diagramů (např. Chart.js). Zadání považuji za průměrně obtížné a považuji ho za splněné.

Práce s literaturou

Student si aktivně dohledával literaturu týkající se zejména problematiky otevřených dat a vizualizace dat.

Aktivita během řešení, konzultace, komunikace

Student byl aktivní během celého akademického roku. Účastnil se online porad přibližně jednou za týden a dalších setkání projektu Zastupko.cz. Také průběžně komunikoval přes Slack.

Aktivita při dokončování

Práce byla dokončována spíše do poslední chvíle. Její obsah byl nicméně přiměřeně konzultován. Studenta zdržely zejména průběžně měnící se požadavky ze strany týmu projektu Zastupko.cz.

Publikační činnost, ocenění

Výsledek je využitelný pro vizualizaci dat z hlasování poslanecké sněmovny ČR v kontextu statistických údajů vývoje země, což je aktuální pro společnost zejména v souvislosti s nadcházejícími volbami do poslanecké sněmovny ČR.

Points proposed by supervisor: 80

Grade proposed by supervisor: B

Reviewer’s report
Ing. Kristýna Zaklová

Student prostudoval vybranou problematiku a navrhl, implementoval i demonstroval na reálných datech krajských zastupitelstev řešení, které splňuje vytyčené cíle. S ohledem na výše uvedené výhrady navrhuji hodnocení stupněm C.

Evaluation criteria Verbal classification Points
Náročnost zadání

Evaluation level: průměrně obtížné zadání

Zadání práce hodnotím jako průměrně obtížné. Autor prostudoval problematiku vizualizace hlasování samospráv a principy a techniky vizualizace dat. Poté navrhl a implementoval sadu vizualizačních komponent pro analyzovaná data. Tyto komponenty byly využity v navazujících pracích, které autor cituje jako [17] a [27]. Při analýze požadavků se autor odkazuje na tým Zastupko.cz, nicméně z týmu projektu s ním konzultoval výstupy pouze vedoucí práce a autorky referovaných souběžně vznikajících prací.

Prezentační úroveň technické zprávy

Struktura technické zprávy se skládá z osmi kapitol. Zpráva má logické členění a její obsah je rozumně rozdělen, až na kapitolu 2, která působí chaoticky (např. co jsou otevřená data se čtenář dozví až v sekci 2.1.3). Navíc obsahuje popis projektu Zastupko.cz v rámci rešerše existujících aplikací, nicméně v kontextu práce tento projekt spadá pouze do analýzy. Kapitola 3 pojednává o vizualizaci dat, obsahuje však jediný obrázek. Kapitola 5 obsahuje poměrně různorodé obrázky, ačkoliv se jedná o návrh komponent jedné knihovny, která by měla působit uceleným dojmem. 

70
Formální úprava technické zprávy

Po jazykové i typografické stránce je technická zpráva na dobré úrovni, text je srozumitelný. Místy se však vyskytují bílá místa nebo drobné chyby (neformální formulace, chybějící čárky apod.). U obrázků č. 5.2, 5.3 a 5.4 není uveden autor, kterým je Lukáš Etzler. Místy jsou nečitelné popisky a názvy grafů a os (např. obrázek 6.2).

75
Realizační výstup

Realizačním výstupem je sada vizualizačních komponent pro hlasovací data. Z implementačního hlediska bych vytkla nevyužití vektorové grafické reprezentace u vhodných grafů. Dále nebyla dostatečně odladěna responzivita vytvořených komponent na různých zařízeních, ačkoliv i sám autor v technické zprávě klade důraz na tento cíl.

70
Využitelnost výsledků

Autor ve své práci uvádí, že knihovna již byla integrována do systému, nicméně aktuálně je použita pouze v jedné vývojové větvi. Výsledky jsou v případě důkladného otestování na různých zařízeních a zapracování zpětné vazby od celého týmu projektu Zastupko.cz využitelné v systému pro vizualizaci hlasování hlasovacích dat.

Rozsah splnění požadavků zadání

Evaluation level: zadání splněno s drobnými výhradami

Zadání považuji za splněné. Textová část práce obsahuje informace, které pokrývají všechny body zadání, s výjimkou části bodu 1, z něhož postrádám popis problematiky zpracování dat. Navazující analýza těchto dat a vyhodnocení požadavků na odvozování znalostí z nich byla provedena pouze nad projektem Zastupko.cz, nicméně ten autor rozšiřuje, proto ho nepovažuji za vhodný pro zhodnocení problematiky. Výstupy vytvořené v praktické části odpovídají zadání.

Rozsah technické zprávy

Evaluation level: je v obvyklém rozmezí

Práce má 43 stran včetně seznamu literatury, rozsah technické zprávy splňuje předepsané požadavky.

Práce s literaturou

Práce se odkazuje celkem na 33 zdrojů, část tvoří vědecké publikace. Text obsahuje řádné odkazy na literaturu.

75
Topics for thesis defence:
  1. Zvažoval jste využití nějaké SVG knihovny pro Vaše komponenty? Pokud ano, o jakou knihovnu se jednalo a proč jste nakonec u většiny komponent použil Chart.js?
  2. Můžete stručně vysvětlit podstatu a přínos Vaší úpravy mapové vizualizace?
Points proposed by reviewer: 72

Grade proposed by reviewer: C

Responsibility: Mgr. et Mgr. Hana Odstrčilová