Zacznij terazZacznij za darmo

Zmiana osi Y na gęstość

Domyślnie oś Y przedstawia liczbę obserwacji, które znalazły się w danym przedziale (ang. bin). To wygodne i czytelne rozwiązanie – ale co, jeśli chcesz interpretować wykres jako prawdziwą krzywą gęstości, którą próbuje estymować? Tzn. tak, żeby suma (szerokości słupków) × (wysokości słupków) wynosiła 1?

Aby to osiągnąć, wystarczy dodać y = stat(density) do mapowań estetycznych. W ten sposób oś Y zostanie przeskalowana z liczebności na empiryczne oszacowanie prawdopodobieństwa. Kształt wykresu nie zmieni się wcale – zmieni się jedynie interpretacja osi Y.

Wypróbujmy to na przykładzie godziny, o której kierowca przekraczający prędkość został zatrzymany (hour_of_day). Zmniejsz też nieco przezroczystość słupków, żeby linie siatki były widoczne – ułatwi to porównywanie wartości.

To ćwiczenie jest częścią kursu

Najlepsze praktyki wizualizacji danych w R

Zobacz kurs

Instrukcje do ćwiczenia

  • Ustaw estetykę x na hour_of_day.
  • Ustaw estetykę y na stat(density).
  • Zmień wartość alpha w geom_histogram() na 0.8.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

ggplot(md_speeding) +
	geom_histogram(
		# set x and y aesthetics to hour_of_day and stat(density) respectively.
		___
		# make points see-through by setting alpha to 0.8
		___
	)
Edytuj i uruchom kod