HOWTO · R

ylim() und xlim() in R

Dieses Tutorial zeigt, wie Sie ylim() und xlim() in R effektiv verwenden, um Achsengrenzen in Datenvisualisierungen festzulegen. Lernen Sie anhand klarer Beispiele und ausführlicher Erklärungen, wie Sie Ihre Diagramme verbessern. Entdecken Sie, wie wichtig es ist, Achsengrenzen zu steuern, um wichtige Datentrends hervorzuheben und Ihre visuelle Darstellung zu verbessern.

Auf dieser Seite

In den Basisgrafiken von R legen Sie den Bereich der vertikalen Achse mit ylim und den der horizontalen Achse mit xlim fest. Übergeben Sie eines der beiden Argumente oder beide an eine Plotfunktion wie plot(), jeweils als Paar aus unterer und oberer Grenze. Das folgende Beispiel zeigt beide Grenzen in einem Streudiagramm; danach folgen Hinweise zum Anpassen jeder Achse sowie zu ggplot2.

Was sind ylim() und xlim()?

Achsengrenzen in einem Basis-Plot von R festzulegen bedeutet, xlim für die horizontale Achse, ylim für die vertikale Achse oder beide an eine Plotfunktion wie plot() zu übergeben. Jedes Argument nimmt einen numerischen Vektor mit der unteren und der oberen Grenze auf. Dieses vollständige Beispiel verwendet dieselben Daten, um beide Grenzen zusammen zu zeigen:

x <- 1:10
y <- c(2, 3, 5, 7, 11, 13, 17, 19, 23, 29)

# Set both visible axis ranges in a base R scatter plot.
plot(x, y, xlim = c(2, 8), ylim = c(0, 30),
     xaxs = "i", yaxs = "i",
     main = "Selected ranges for x and y")

Die Argumente xlim und ylim liefern die gewünschten Bereiche. Basisgrafiken fügen normalerweise an jedem Achsenende eine kleine Erweiterung hinzu; xaxs = "i" und yaxs = "i" schalten diese Auffüllung ab, sodass dieses Beispiel genau die angegebenen Grenzen von 2 bis 8 und 0 bis 30 anzeigt. Die Punkte mit den x-Werten 1, 9 und 10 liegen außerhalb des angezeigten horizontalen Bereichs. Der Code verwendet Basisgrafiken, die in R enthalten sind; er erfordert kein zusätzliches Paket. Das Beispiel läuft erfolgreich und erzeugt keine Ausgabe auf der Standardausgabe oder der Standardfehlerausgabe.

In den Basisgrafiken von R sind ylim und xlim Argumente, mit denen Sie die dargestellten Bereiche der y-Achse und der x-Achse wählen. Die Namen werden bei der Besprechung der Optionen oft als ylim() und xlim() geschrieben, aber in einem Aufruf von plot() übergeben Sie die Grenzen an die benannten Argumente, etwa als ylim = c(0, 30). Die erste Zahl ist die untere Grenze und die zweite die obere Grenze. Normalerweise wählt R die Bereiche aus den übergebenen Daten aus; explizite Grenzen sind nützlich, wenn Sie eine einheitliche Skala über mehrere Plots hinweg wünschen oder die Aufmerksamkeit auf ein bestimmtes Intervall lenken möchten.

Diese Argumente gehören zu Basisgrafikfunktionen wie plot(). Sie sind keine universellen Parameter, die sich alle Plot-Systeme von R teilen. Insbesondere verwendet ggplot2 eine andere Schnittstelle, die weiter unten beschrieben wird.

Mit ylim() die Grenzen der Y-Achse festlegen

Verwenden Sie das Argument ylim, um den vertikalen Bereich festzulegen. Beispielsweise liefert plot(x, y, ylim = c(0, 30)) 0 und 30 als Grenzen der y-Achse, während der Bereich der x-Achse aus den x-Daten gewählt wird. Mit dem Standardstil yaxs = "r" fügen Basisgrafiken dem angezeigten Bereich eine Auffüllung hinzu; ergänzen Sie yaxs = "i", wenn die Achse genau die angegebenen Grenzen anzeigen soll. Die Grenzen sollten dieselben Einheiten verwenden wie die dargestellten y-Werte. Ein breiterer Bereich kann Platz für Beschriftungen lassen oder mehrere Plots vergleichbar machen; ein schmalerer Bereich kann Schwankungen innerhalb eines ausgewählten Intervalls leichter sichtbar machen.

In Basisgrafiken sind Punkte oder Teile grafischer Objekte außerhalb des gewählten Plotbereichs in diesem Bereich nicht sichtbar. Wählen Sie die Grenzen mit Blick auf die Daten und den Vergleich, den die Leser anstellen sollen. Ein Plot kann auch dann mit dem gewünschten Achsenbereich gezeichnet werden, wenn einige Beobachtungen außerhalb liegen; der sichtbare Ausschnitt sollte daher nicht mit dem vollständigen Datenbereich verwechselt werden.

Mit xlim() die Grenzen der X-Achse festlegen

Das Argument xlim steuert den horizontalen Bereich. Beispielsweise liefert plot(x, y, xlim = c(2, 8)) 2 und 8 als Grenzen der x-Achse, während plot() den Bereich der y-Achse aus den y-Daten wählt. Der Standardstil xaxs = "r" fügt dem angezeigten Bereich eine Auffüllung hinzu; verwenden Sie xaxs = "i", um genau die angegebenen Grenzen anzuzeigen. Das ist nützlich, um sich auf ein Zeitintervall, eine Teilmenge gemessener Werte oder eine gemeinsame horizontale Skala über mehrere Plots hinweg zu konzentrieren.

Geben Sie die Grenzen wie bei ylim in den Einheiten der x-Variablen und für die übliche aufsteigende Achse in der Reihenfolge von unten nach oben an. Liegen Beobachtungen außerhalb des sichtbaren Intervalls, erscheinen sie nicht im Plotbereich. Prüfen Sie das gewählte Intervall anhand der Originaldaten, damit eine fokussierte Ansicht nicht den Kontext verbirgt, den Ihre Leser benötigen.

ylim() und xlim() für mehr Kontrolle kombinieren

Übergeben Sie beide Argumente an denselben Basisgrafik-Aufruf, um einen rechteckigen Anzeigebereich festzulegen, wie im Eingangsbeispiel. Setzen Sie xlim anhand der horizontalen Werte, die Sie zeigen möchten, und ylim anhand der vertikalen Werte, die Sie zeigen möchten. Standardmäßig erweitert die Basisgrafik jeden Bereich geringfügig; ergänzen Sie xaxs = "i" und yaxs = "i", wenn die angezeigten Achsen genau an den angegebenen Grenzen enden sollen. Beim Vergleich von Plots erleichtern gleiche Grenzen den Vergleich ihrer Skalen; beim Erkunden eines einzelnen Plots wählen Sie Grenzen, die den zur Deutung des Musters nötigen Kontext bewahren.

Das Verhalten hängt vom Plot-System ab. In ggplot2 werden Achsengrenzen üblicherweise mit Skalen wie scale_x_continuous(limits = c(2, 8)) und scale_y_continuous(limits = c(0, 30)) angegeben. Skalengrenzen entfernen Werte außerhalb des Bereichs, bevor spätere Plot-Ebenen oder statistische Zusammenfassungen gezeichnet werden, was diese Ergebnisse beeinflussen kann. Verwenden Sie für einen reinen Ansichts-Zoom, der die Daten für Berechnungen behält, coord_cartesian(xlim = c(2, 8), ylim = c(0, 30)). Diese ggplot2-Optionen sind keine xlim- und ylim-Argumente von plot(); verwenden Sie die Schnittstelle des Plot-Systems in Ihrem Code.

Fazit

Für einen Basis-Plot in R legen Sie den horizontalen Bereich mit xlim und den vertikalen Bereich mit ylim fest; übergeben Sie beide, wenn Sie beide Achsen steuern müssen. Wählen Sie Grenzen, die den Vergleich unterstützen, und denken Sie daran, dass Beobachtungen außerhalb des sichtbaren Bereichs möglicherweise nicht erscheinen. Verwenden Sie in ggplot2 Skalengrenzen oder coord_cartesian(), je nachdem, ob die Grenzen die dargestellten Daten oder nur die Ansicht beeinflussen sollen.

Häufig gestellte Fragen

  1. Kann ich beide Achsengrenzen in einem Plot festlegen? Ja. Fügen Sie xlim = c(lower_x, upper_x) und ylim = c(lower_y, upper_y) in denselben Basisgrafik-Aufruf ein.

  2. Wie sollte ich die Grenzen wählen? Verwenden Sie die Einheiten und den Bereich jeder Variablen, die Vergleiche, die die Leser anstellen müssen, und ob mehrere Plots eine gemeinsame Skala benötigen. Prüfen Sie, ob die gewählte Ansicht genügend Kontext lässt, um die Daten zu deuten.

  3. Was geschieht mit Punkten außerhalb der Grenzen? In Basisgrafiken liegen sie außerhalb des sichtbaren Plotbereichs und werden dort nicht angezeigt. In ggplot2 können Skalengrenzen Werte außerhalb des Bereichs aus späteren Berechnungen entfernen; coord_cartesian() zoomt die Ansicht, während die Daten für diese Berechnungen erhalten bleiben.

  4. Sind xaxs und yaxs Alternativen zu xlim und ylim? Sie steuern die Achsenerweiterung in Basisgrafiken, etwa die Auffüllung um den dargestellten Bereich. Verwenden Sie xlim und ylim, um Achsengrenzen anzugeben; der Standard-Achsenstil kann die angezeigten Bereiche erweitern. Setzen Sie xaxs = "i" und yaxs = "i", wenn die angezeigten Achsen genau an diesen Grenzen enden müssen.