Jak możemy zmienić oś y na procent, jak na rysunku? Mogę zmienić zakres osi y, ale nie mogę zrobić tego w procentach.
107
Posługiwać się:
+ scale_y_continuous(labels = scales::percent)
Lub, aby określić parametry formatowania procentu:
+ scale_y_continuous(labels = scales::percent_format(accuracy = 1))
(polecenie labels = percent
jest przestarzałe od wersji 2.2.1 ggplot2)
library(scales)
w tym celu.scales::percent(accuracy = 1)
nie działa, ponieważ*_format()
wersje tworzą funkcję zamiast ... cokolwiekpercent()
tworzy samodzielnie, czy to prawda?Zasadniczo możesz przekazać dowolną funkcję ponownego formatowania do
labels
parametru:Lub
Powtarzalny przykład:
źródło
ggplot2
ascales
pakiety mogą to zrobić:Wygląda na to, że
stat()
opcja została wyłączona, powodując komunikat o błędzie. Spróbuj tego:źródło
Zapożyczona od @Deena powyżej, ta modyfikacja funkcji etykiet jest bardziej wszechstronna, niż mogłoby się wydawać. Na przykład miałem ggplot, w którym mianownik zliczanych zmiennych wynosił 140. Użyłem jej przykładu w ten sposób:
Pozwoliło mi to uzyskać moje procenty na mianowniku 140, a następnie przełamać skalę przy przyrostach 25% zamiast dziwnych liczb, które domyślnie. Kluczowe jest tutaj to, że podziały skali są nadal ustalane przez pierwotną liczbę, a nie przez twoje procenty. Dlatego przerwy muszą znajdować się od zera do wartości mianownika, a trzeci argument w „przerwach” to mianownik podzielony przez dowolną liczbę podziałów etykiet (np. 140 * 0,25 = 35).
źródło