Ist es möglich, nur die Untergrenze eines Grenzwerts für die kontinuierliche Skalierung festzulegen? Ich möchte alle meine Diagramme auf 0 setzen, ohne die Obergrenze angeben zu müssen.
z.B
+ scale_y_continuous(minlim=0)
Ist es möglich, nur die Untergrenze eines Grenzwerts für die kontinuierliche Skalierung festzulegen? Ich möchte alle meine Diagramme auf 0 setzen, ohne die Obergrenze angeben zu müssen.
z.B
+ scale_y_continuous(minlim=0)
Antworten:
Sie können verwenden expand_limits
ggplot(mtcars, aes(wt, mpg)) + geom_point() + expand_limits(y=0)
Hier ist ein Vergleich der beiden:
expand_limits
expand_limits
Ab Version 1.0.0 von ggplot2
können Sie nur ein Limit angeben und das andere so festlegen, wie es normalerweise durch Festlegen dieses zweiten Limits festgelegt wird NA
. Dieser Ansatz ermöglicht sowohl das Erweitern als auch das Abschneiden des Achsenbereichs.
ggplot(mtcars, aes(wt, mpg)) + geom_point() +
scale_y_continuous(limits = c(0, NA))
Wenn Sie es über ylim(c(0, NA))
angeben, erhalten Sie eine identische Zahl.
Wie wäre es mit aes(ymin=0)
, wie in:
ggplot(mtcars, aes(wt, mpg)) + geom_point() + aes(ymin=0)
geom_density
es für mich gibt Error: stat_bin() must not be used with a y aesthetic
oder wenn es innerhalb des platziert geom_density
wird Warning: Ignoring unknown aesthetics: ymin
(letzteres wird voll erwartet)
Sie können auch den folgenden Code ausprobieren, der Ihnen die minimale y-Achse bei Null und auch ohne die zusätzliche Lücke zwischen der x-Achse und dem minimalen y-Wert gibt.
scale_y_continuous(limits = c(0, NA), expand = c(0,0))
coord_cartesian()
stattdessen zu tun ?