Różnica między facet_wrap() i facet_grid() w r
Funkcje facet_grid() i facet_wrap() z pakietu ggplot2 mogą zostać użyte do utworzenia siatki wykresów.
Oto główna różnica między tymi dwiema funkcjami:
- Funkcja facet_grid() utworzy siatkę wykresów dla każdej określonej kombinacji zmiennych, nawet jeśli niektóre wykresy są puste.
- Funkcja facet_wrap() wyświetli wykresy tylko dla kombinacji zmiennych mających wartości, co oznacza , że nie wyświetli żadnych pustych wykresów .
Poniższe dwa przykłady ilustrują różnicę między tymi dwiema funkcjami przy użyciu następującej ramki danych:
#create data frame
df <- data. frame (team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
position=c('G', 'G', 'F', 'F', 'G', 'G', 'G', 'G'),
points=c(8, 14, 20, 22, 25, 29, 30, 31),
assists=c(10, 5, 5, 3, 8, 6, 9, 12))
#view data frame
df
team position points assists
1 GA 8 10
2 AG 14 5
3 FY 20 5
4 AF 22 3
5 BG 25 8
6 BG 29 6
7 BG 30 9
8 BG 31 12
Przykład 1: użycie funkcji facet_grid().
Poniższy kod pokazuje, jak użyć funkcji facet_grid() do utworzenia siatki wyświetlającej wykres rozrzutu asyst w funkcji punktów dla każdej kombinacji drużyny i pozycji:
library (ggplot2)
ggplot(df, aes (assists, points)) +
geom_point() +
facet_grid(position~team)
Należy zauważyć, że dla każdej kombinacji zespołu i pozycji tworzony jest wykres rozrzutu, mimo że w oryginalnej ramce danych nie istnieją żadne wartości dla wartości zespołu B i wartości pozycji F :
Oto jak działa facet_grid() : utworzy ona wykres dla każdej określonej kombinacji zmiennych, nawet jeśli niektóre wykresy są puste.
Przykład 2: użycie funkcji facet_wrap().
Poniższy kod pokazuje, jak użyć funkcji facet_wrap() do utworzenia siatki wyświetlającej wykres rozrzutu asyst w funkcji punktów dla każdej istniejącej kombinacji zespołu i pozycji:
library (ggplot2)
ggplot(df, aes (assists, points)) +
geom_point() +
facet_wrap(position~team)
Należy pamiętać, że wykres rozrzutu jest tworzony tylko dla kombinacji drużyn i pozycji , które istnieją w oryginalnej ramce danych.
Oznacza to, że dla kombinacji zespołu B i pozycji F nie jest tworzony żaden wykres, ponieważ w oryginalnej ramce danych nie istnieje żadna wartość dla tej konkretnej kombinacji.
Oto jak działa facet_wrap() : nigdy nie utworzy pustej ścieżki.
Uwaga : pełny przewodnik po funkcjach facet_grid() i facet_wrap() można znaleźć w dokumentacji ggplot2.
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w ggplot2:
Jak zmienić rozmiar czcionki w ggplot2
Jak usunąć legendę w ggplot2
Jak obracać etykiety osi w ggplot2