HOWTO · R

Hinzufügen einer Linie zu einem Diagramm mit der Funktion Lines() in R

Dieser Artikel zeigt, wie Sie mit der Funktion lines() in R . eine Linie zu einem Diagramm hinzufügen

In diesem Artikel erfahren Sie, wie Sie mit der Funktion lines() in R eine Linie zu einem Plot hinzufügen.

Verwenden Sie die Funktion lines(), um einem Plot in R Plot eine Linie hinzuzufügen

Die Funktion lines() ist Teil des R-Pakets graphics und wird verwendet, um dem Plot Linien hinzuzufügen. Zuerst sollte die Funktion plot aufgerufen werden, um einen Plot zu erstellen, bei dem es eine Zuordnung von Variablen gibt, die durch die ersten beiden Argumente angegeben werden. Beachten Sie, dass das zweite Argument, das die y-Achsen-Koordinaten bezeichnet, optional ist. Sobald der Plot gezeichnet ist, können wir die Funktion lines() aufrufen und die Koordinatenvektoren nach Bedarf übergeben, um dem Plot Linien hinzuzufügen. Die Funktion plot ist nicht erforderlich, um ein Liniendiagramm zu zeichnen, damit die Funktion lines() funktioniert.

library(stats)
library(babynames)
library(dplyr)

plot(cars$speed, cars$dist, type = "l", col = "red",
     main = "Title of the Plot",
     xlab = "Speed (mph)",
     ylab = "Stopping Distance (Feet)")

lines(cars$speed, cars$dist/4 , col = "green")

legend("topleft", c("line 1", "line 2"),
       lty = c(1,1),
       col = c("red", "green"))

Linie zum Plot hinzufügen

Verwenden Sie Punkte, um Punkte zu einem Diagramm in R . hinzuzufügen

Ähnlich der Funktion lines() bietet das Paket graphics die Funktion points(), um Punkte in den Plot zu zeichnen. Das folgende Beispiel veranschaulicht das Szenario, in dem zwei Linien- und Punktzuordnungen auf demselben Diagramm erstellt werden. Beachten Sie jedoch, dass das ursprüngliche Liniendiagramm mit der Funktion plot gezeichnet wurde.

library(stats)
library(babynames)
library(dplyr)

plot(cars$speed, cars$dist, type = "l", col = "red",
     main = "Title of the Plot",
     xlab = "Speed (mph)",
     ylab = "Stopping Distance (Feet)")
points(cars$speed, cars$dist, col = "blue" )

lines(cars$speed, cars$dist/4 , col = "green")
points(cars$speed, cars$dist/4 , col = "black")

legend("topleft", c("line 1", "line 2"),
       lty = c(1,1),
       col = c("red", "green"))

Punkte zum Liniendiagramm hinzufügen

Die Reihenfolge der Funktionsaufrufe von plot und lines beeinflusst die Skalen von Plot

Manchmal haben die mit dem ersten Funktionsaufruf gemappten Daten Skalen, die für das folgende Mapping nicht ausreichen. Der nächste Codeausschnitt zeigt, wie eine der Zeilen im Plot fast außerhalb der Grenzen liegt.

library(stats)
library(babynames)
library(dplyr)

dat <- babynames %>%
  filter(name %in% c("Alice")) %>% filter(sex=="F")
dat2 <- babynames %>%
  filter(name %in% c("Mary")) %>% filter(sex=="F")

plot(dat$year, dat$n, type = "l", col = "blue",
     main = "Women born with different names",
     xlab = "Year",
     ylab = "Number of babies born")
lines(dat2$year, dat2$n, col = "red")

Plot- und Linienfunktionen

Beachten Sie, dass das vorherige Problem durch manuelles Neuordnen der Zeilen gelöst werden kann, wie im folgenden Beispiel gezeigt. Komplexere Skripts müssen jedoch möglicherweise bedingte Anweisungen und dynamische Überprüfungen für die Maximalwerte der y-Achsendaten erstellen.

library(stats)
library(babynames)
library(dplyr)

dat <- babynames %>%
  filter(name %in% c("Alice")) %>% filter(sex=="F")
dat2 <- babynames %>%
  filter(name %in% c("Mary")) %>% filter(sex=="F")
dat3 <- babynames %>%
  filter(name %in% c("Mae")) %>% filter(sex=="F")

plot(dat2$year, dat2$n, type = "l", col = "blue",
     main = "Women born with different names",
     xlab = "Year",
     ylab = "Number of babies born")
lines(dat$year, dat$n, col = "red")
lines(dat3$year, dat3$n, col = "orange")

legend("topright", c("Mary", "Alice", "Mae"),
       lty = c(1,1,1),
       col = c("blue", "red", "orange"))

Plot- und Linienfunktionen neu anordnen