Professional Documents
Culture Documents
Лекція 4 Візуалізація даних
Лекція 4 Візуалізація даних
Лекція 4
У 1848 році в лондонському районі Сохо було зафіксовано спалах холери, під
час якого загинуло 616 жителів. Під час цього спалаху лікар епідеміолог Джон
Сноу на основі візуального аналізу даних зробив припущення, що джерелом
зараження є вода.
Проблема вакцинації та відмови від вакцинації актуальна не лише для
України. Після опублікованого у 1998 році в британському медичному журналі
дослідження де щеплення були вказані як причина аутизму кількість батьків,
які відмовляються від щеплень збільшилась.
Питання
1. Мова візуалізації.
2. Інфодизайн: графіки та ефективність візуального кодування.
3. Функція plot().
4. Графічна бібліотека ggplot2 та її можливості.
5. Збереження графіку.
1. Візуалізація
Елементами мови візуалізації є мітки та візуальні канали.
Мітки - це базові графічні елементи (найпростіші геометричні об'єкти):
точка
лінія
площина (на 2D поверхні)
об'ємне тіло (в 3D)
Канали - це спосіб, у який можна показати позначки графіка. Контролюємо вигляд
позначки за допомогою таких візуальних каналів:
позиція
розмір
форма
орієнтація
кольор (відтінок, насиченість, яскравість).
колір
(яскравість)
площа
Канали для відповіді
Канали для на питання
відповіді на «Наскільки багато?»
питання «Що?» (кількісні), або
(категоріальні «Наскільки сильно?»
(впорядковані)
дані)
колір
орієнтація
(відтінок)
позиція об’єм
Типи графіків можуть бути застосовані для різних типів задач аналізу:
Номінальне порівняння
Еволюція в часі
Ранжування
Співвідношення частки і цілого
Відхилення
Розподіл
Кореляція
Географічні дані
Для визначення, який саме тип нам потрібно показати (який графік
вибрати), потрібно пошукати в описі задачі задані ключові слова, за якими
можна визначити тип зв’язку.
1. Номінальне порівняння - серія кількісних дискретних значень.
Серія кількісних дискретних значень, кожна з яких відноситься до своєї категорії, щоб
порівняти їх відносний розмір.
Змінні - категорійна і кількісна, кодуємо їх як позицію.
стовпчикові графіки (вертикальні або горизонтальні) або точкові графіки
2. Еволюція в часі
Ключові слова: тренд, зміна, зростання (спадання), збільшення (зменшення),
підвищення (пониження), коливання.
Змінні – впорядкована (час) та кількісна. Кодуємо позицією.
Лінійний графік - перший вибір. Також, вертикальні стовпчики - не
горизонтальні, в яких час йде по вертикалі, оскільки показуємо значення
впродовж якогось часу зліва направо.
3. Ранжування
Ключові слова: більше (менше) ніж, дорівнює.
Обов’язково використовуємо сортування!
4. Співвідношення частки і цілого
Ключові слова: відношення, відсоток, частка.
Змінні - це категорії (частки цілого) та їх внесок у ціле. Кодування - колір для категорій
та довжина для значень часток, отримаємо стовпчикову діаграму.
5. Відхилення
Ключові слова: плюс або мінус, варіація (відхилення), різниця, порівнюючи з.
Маємо кількість і категорію в даних, використовуємо позицію для кодування.
Інший варіант - використати різницю у відсотках, для того щоб
об’єктивно оцінити відхилення для різних категорій. Для відхилення у часі
використовують лінійний графік з різницею між показниками.
6. Розподіл
Ключові слова: частота, розподіл, концентрація, нормальний розподіл (крива
Гауса, крива Белла).
Графік розподілу показує, наскільки часто значення кількісної змінної
зустрічаються вздовж всього діапазону своїх значень, від найменшого до
найбільшого.
Зазвичай, весь цей діапазон розбивається на рівні інтервали і для кожного
інтервалу рахується скільки разів або який відсоток кількісна змінна
потрапила в цей інтервал. Для такої задачі найчастіше використовується -
гістограма.
Багато розподілів показують за допомогою лінійного частотного полігона
або бокс - графіка.
Стратегічна візуалізація - переводить у візуальну форму різні дані про аспекти роботи
організацій. Це всілякі діаграми продуктивності, життєвого циклу і графіки структур
організацій.
plot(x, y, type = "p", xlim = NULL, ylim = NULL, log = "", main = NULL, sub = NULL,
xlab = NULL, ylab = NULL, ann = par("ann" ), axes = TRUE, frame.plot = axes,
panel.first = NULL, panel.last = NULL, asp = NA, ...)
type: "p" – точки; "l" – лінії; "b" – лінії та точки; "c" – лінії з розривами; "o" – точки поверх ліній; "h" –
гістограма; ...
xlim та ylim – визначають границі для абсциси та ординати,
main – заголовок графіку,
sub – підзаголовок графіку,
xlab – назва осі Ох,
ylab – назва осі Оу,
ann – визначає, чи відображаються підписи,
axes – визначає наявність осей,
asp – пропорція між шкалою по х та по у
Приклад
змінні:
• subject - номер піддослідного
• time - час з моменту введення препарату (год)
• conc - концентрація препарату в крові
1. Залежність концентрації індометацину в крові:
Аргументи:
data: набір даних, який використовується для побудови графіка
mapping: керування віссю x і y
+ - продовження читання коду. Це робить код читальним, розбиваючи його на час
тини.
geometric object - тип графіка:
point: `geom_point()`
bar: `geom_bar()`
line: `geom_line()`
histogram: `geom_histogram()`
Приклад
Групування по осі х
5. Скрипкова діаграма (віолончель)
5. Приклади графіків розсіювання (scatter plot) та бульбашкового
(bubble plot)
Файл wgi_fh.csv містить набір даних показників якісного державного управління
(Worldwide Governance Indicators) та індексу від Freedom House (найстаріша неурядова
організація у США, яка займається поширенням та захистом демократії та свободи по
всьому світу) за 2016 рік.
Опис змінних:
X - id країни;
country – назва країни;
cnt_code – код країни;
year - рік;
va - індекс Voice and Accountability (Голосування та підзвітність);
ps – індекс Political Stability and Lack of Violence (Політична
стабільність і відсутність насильства);
ge – індекс Government Effectiveness (Ефективність роботи уряду);
rq - індекс Regulatory Quality (Якість регулювання);
rl - індекс Rule of Law (Верховенство права);
cc - індекс Control of Corruption (Боротьба з корупцією);
fh – індекс Freedom Rating від Freedom House.
http://info.worldbank.org/governance/wgi/Home/Documents
Побудуємо діаграму розсіювання за такими змінними:
індекс Voice and Accountability (va, Голосування та Підзвітність)
індекс Rule of Law (rl, Верховенство права).
Можемо накласти на цю діаграму еліпс розсіювання, щоб було простіше
судити про напрям і силу зв'язку:
directory <-getwd()
directory
ggsave("my_plot.png")
Збереження графіку на жорсткому диску за допомогою
інтерфейсних засобів RStudio