Візуалізація: Результати другого туру виборів Президента України 2019 року, geowaffle chart

Спроба поєднати waffle chart із geofacet.

geowaffle chart

geowaffle chart

Як я вже писав раніше, geofaceting дозволяє впорядковувати панелі із графіками таким чином, що їхнє розташування буде відтворювати розташування регіонів, країн, штатів, областей, міст на карті.

Створені в такий спосіб візуалізації поєднують в собі властивості карти та графіку, вони дозволяють створювати small multiples із великою кількістю даних і при цьому надають можливість простежувати регіональні тренди.

Разом з тим waffle charts - це доволі непогана альтернатива секторним діаграмам (простіше пай-чартам). Якщо ви ще не бачили, є симпатична бібліотека для R, котра так і називається - waffle. Нова версія бібліотеки запроваджує geom_waffle() для бібліотеки ggplot2. Тож у мене виникла ідея поєднати waffle::geom_waffle() та geofacet::facet_geo().

Щоправда, одразу це не спрацювало, оскільки функція waffle::geom_waffle() ще є експериментальною, і не працює з коробки в поєднанні з функцією geofacet::facet_geo(). Але, використовуючи надані автором бібліотеки waffle приклади коду, я доволі швидко імплементував логіку трансформації даних, необхідну для створення візуалізації.

Для тесту я обрав результати другого туру виборів Президента України 2019 року, оскільки тут всього дві категорії. Згодом хочу потестувати цей підхід на більшій кількості категорій (наприклад, взяти перший тур виборів Президента, або результати виборів до Верховної Ради). Цікавить, наскільки добре буде читатись така візуалізація, якщо категорій не дві, а, скажімо, чотири чи п'ять. А також в який спосіб розташовувати підписи значень для цих категорій.

Звісно, ці ж самі дані можна було показати, використовуючи звичайний stacked bar chart. Але мені видається, що waffle chart робить ці дані менш абстрактними - один прямокутник дорівнює одному відсотку. Простий і зрозумілий спосіб кодування. Правда, тут є один недолік - за такого способу кодування “з'їдаються” десяткові значення. Можна, звісно, дробити прямокутники, але це в свою чергу викличе проблеми з їх вписуванням у сітку.


Також принагідно я зробив невеличкий наклад поштових карток формату А5 із цим паттерном. Думаю згодом додруковувати, але щоразу з іншими кольорами, тоді кожен наклад буде унікальним.

geowaffle postcard

geowaffle postcard


Код і дані на GitHub