Czy mógłbyś cofnąć zaakceptowaną odpowiedź? Nie jest już poprawna, ale ta odpowiedź jest głównym hitem podczas wyszukiwania w Google pytania.
Konrad Rudolph
Odpowiedzi:
97
Odpowiedź dla poszukujących w 2016 roku.
Od ggplot2wersji 2.0 argument switch zrobi to dla facet_gridlub facet_wrap:
Domyślnie etykiety są wyświetlane w górnej i prawej części wykresu. Jeśli „x”, górne etykiety będą wyświetlane na dole. Jeśli "y", etykiety po prawej stronie będą wyświetlane po lewej stronie. Można również ustawić na „oba”.
Stripsy mogą być teraz dowolnie pozycjonowane facet_wrap()za pomocą argumentu strip.position (deprecates switch).
Obecne dokumenty są nadal w wersji 2.1, ale strip.positionjest udokumentowane w dokumentacji deweloperskiej.
Domyślnie etykiety są wyświetlane w górnej części wykresu. Za pomocą strip.position można umieścić etykiety po jednej z czterech stron poprzez ustawieniestrip.position = c("top", "bottom", "left", "right")
możesz teraz użyć facet_wrap(~var, strip.position = "bottom"), choć z jakiegoś powodu powoduje to, że etykiety znajdują się nad etykietami znaczników osi, a nie poniżej (co moim zdaniem byłoby bardziej sensowne), jak widać na moim zrzucie ekranu małej części mojego wykresu
Jeśli chcesz mieć poniższą etykietę, musisz to zrobić
To tylko dostosowuje tekst, a nie położenie pasków na wykresie.
Taylor White
1
Dla mnie również nie ma to wpływu, polecam użycie switchargumentu, jak określono powyżej. Aby konkretnie odpowiedzieć na PO; switch = "x"przeniesie etykiety na dół wykresu.
EcologyTom,
Dziękuję Ci ! Twoje rozwiązanie pomogło mi rozwiązać inny problem, który miałem: wyrównać etykiety (używając hjust zamiast vjust).
rvezy
-5
Aby śledzić użycie motywu:
motyw (strip.text = element_text (vjust = -10))
Upewnij się, że wszystkie etykiety mają taką samą liczbę powrotów karetki.
Label /n Facet /n Onebędzie vjust w innym tempie niż Label /n Facet Two.
Odpowiedzi:
Odpowiedź dla poszukujących w 2016 roku.
Od
ggplot2
wersji 2.0 argument switch zrobi to dlafacet_grid
lubfacet_wrap
:ggplot(...) + ... + facet_grid(facets, switch="both")
Od wersji 2.2.0 ggplot2 ,
Obecne dokumenty są nadal w wersji 2.1, ale
strip.position
jest udokumentowane w dokumentacji deweloperskiej.ggplot(...) + ... + facet_wrap(facets, strip.position="right")
źródło
facet_grid
nadal używaswitch
z argumentamix
,y
lubboth
.możesz teraz użyć
facet_wrap(~var, strip.position = "bottom")
, choć z jakiegoś powodu powoduje to, że etykiety znajdują się nad etykietami znaczników osi, a nie poniżej (co moim zdaniem byłoby bardziej sensowne), jak widać na moim zrzucie ekranu małej części mojego wykresuJeśli chcesz mieć poniższą etykietę, musisz to zrobić
ggplot(zzz, aes(x = c1, y = c2)) + facet_wrap(~ gp, scales = "free", nrow = 3, strip.position = "bottom") + geom_point() + theme( aspect.ratio = 1, strip.background = element_blank(), strip.placement = "outside" )
Jak widać tutaj: https://github.com/tidyverse/ggplot2/issues/2622
źródło
Odpowiedź brzmi tak!
theme(strip.text=element_text(vjust=-10))
Liczba -10 jest określona przez skalę i jednostki, których używasz na swoim wykresie.
źródło
switch
argumentu, jak określono powyżej. Aby konkretnie odpowiedzieć na PO;switch = "x"
przeniesie etykiety na dół wykresu.Aby śledzić użycie motywu:
Upewnij się, że wszystkie etykiety mają taką samą liczbę powrotów karetki.
Label /n Facet /n One
będzie vjust w innym tempie niżLabel /n Facet Two
.źródło