Wizualizacja danych w R

Praktyczny kurs oparty na ggplot2, tidyverse i Quarto

Autor

Paweł Konior

Opublikowano

23 kwietnia 2026

Ten materiał prowadzi od pierwszego wykresu do kompletnej, odtwarzalnej opowieści wizualnej w R. Pracujemy na lokalnych zbiorach danych z tego repozytorium i używamy aktualnego stosu narzędzi: R 4.5.3+, Quarto, tidyverse, ggplot2, renv i ragg.

0.1 Dla kogo

Materiał jest dla osób, które znają podstawy pracy z tabelami, ale chcą świadomie dobierać typ wykresu, kodować go w ggplot2, poprawiać czytelność i publikować wyniki jako HTML albo statyczne grafiki.

0.2 Efekty uczenia

Po przejściu materiału potrafisz:

  • zaimportować i przygotować dane do wykresu;
  • rozpoznać, kiedy użyć wykresu punktowego (scatter plot), liniowego (line chart), słupkowego (bar chart), mapy ciepła (heatmap) albo małych wielokrotności (small multiples);
  • budować wykres warstwowo przez ggplot(), aes(), geom_*(), skale, podział na panele (faceting) i motywy;
  • pisać wykresy z dobrymi etykietami, jednostkami, podpisami i paletami przyjaznymi dla osób z zaburzeniami widzenia barw;
  • formatować znaczniki osi (ticks), wartości na osiach, tytuły (titles) i etykiety (labels);
  • eksportować wykresy w jakości do slajdów, raportu i publikacji internetowej;
  • używać animacji, gdy pokazuje proces albo zmianę w czasie;
  • przygotować końcowy mini-projekt analityczny w Quarto.

0.3 Jak pracować z materiałem

Każdy rozdział ma trzy części: krótką intuicję, kod do uruchomienia oraz zadanie. Warto pisać kod samodzielnie, a nie tylko kopiować komórki. W wizualizacji danych najwięcej uczy moment, w którym wykres wygląda prawie dobrze, ale trzeba jeszcze poprawić skalę, etykietę albo agregację.

0.4 Główne zasady

  • Jeden wykres odpowiada na jedno pytanie.
  • Najpierw porządkujemy dane, potem rysujemy.
  • Nie używamy setwd(), tylko ścieżek projektowych przez here::here().
  • Nie chowamy ważnych decyzji w przypadkowych ustawieniach domyślnych.
  • Każdy wykres ma tytuł, jednostki, opis danych i sensowny tekst alternatywny.