Hinzufügen eines transparenten Rechtecks zu Boxplot in R
-
Verwenden Sie die
rect
-Funktion, um einem Boxplot in R Transparent ein transparentes Rechteck hinzuzufügen -
Verwenden Sie die Funktion
annotate
mitggplot
, um einem Boxplot in R . ein transparentes Rechteck hinzuzufügen
In diesem Artikel werden mehrere Methoden zum Hinzufügen eines transparenten Rechtecks zu einem Boxplot in R veranschaulicht.
Verwenden Sie die rect
-Funktion, um einem Boxplot in R Transparent ein transparentes Rechteck hinzuzufügen
Ein transparentes Rechteck kann als Overlay auf den bestehenden Graphen gezeichnet werden, der mit der boxplot
-Funktion erstellt wurde. Die Funktion rect
wird nach der Funktion plot aufgerufen, um das Rechteck zu zeichnen. Beachten Sie, dass mit rect
auch eine Folge von Rechtecken mit den angegebenen Koordinaten gezeichnet werden kann. In diesem Fall fügen wir dem Boxplot nur ein Rechteck hinzu, das als Hintergrund überlagert wird. Die Funktion rect
übernimmt Positionen als die ersten vier Argumente, die die Rechteckfläche angeben. Diese vier Argumente können als Skalarwert oder als Skalarvektor übergeben werden. Im folgenden Beispiel wird der Datensatz mtcars
und seine beiden numerischen Spalten verwendet, um auf Skalen zu zeichnen. Da die Werte numerisch sind, können wir mit der Funktion max
einige Positionen angeben. Die Funktion rect
kann auch Farbe als Parameter nehmen, um das Rechteck zu füllen. Diesmal wird die Funktion rgb
verwendet, um den Farbwert und den Parameter alpha
zu übergeben, der seine Deckkraft repräsentiert.
boxplot(hp ~ mpg, data = mtcars,
xlab = "Miles/(US) gallon", ylab = "Gross Horsepower",
col = "orange")
rect(-1, -1, max(mtcars$hp + 100), max(mtcars$hp) + 100,
col= rgb(red = 0.95, green = 0.8, blue = 0.3, alpha = 0.2))
Verwenden Sie die Funktion annotate
mit ggplot
, um einem Boxplot in R . ein transparentes Rechteck hinzuzufügen
Wenn der Plot mit der Bibliothek ggplot
erstellt wurde, können wir mit der Funktion annotate
ein transparentes Rechteck hinzufügen. Der folgende Codeausschnitt zeigt das Boxplot mit den Zeichenwerten auf der x-Achse an. Die Funktion annotate
verwendet die Zeichenkette rect
als erstes Argument, um die Rechteckform der Annotationsebene anzugeben. Die folgenden vier Argumente geben die Positionswerte der Form an. Auch wenn die x-Achse nicht numerische Werte hat, kann die Funktion ihre Positionen aufzählen und die vom Benutzer übergebenen Positionsnummern anpassen.
library(ggplot2)
library(dplyr)
p1 <- ggplot(InsectSprays, aes(x = spray, y = count)) +
geom_boxplot(fill = "pink") +
scale_x_discrete(name = "Number of babies") +
ggtitle("Title of the Plot") +
annotate("rect", xmin = 1, xmax = 3, ymin = 0, ymax = max(InsectSprays$count),
alpha = .2, fill = "orange")
p1
Alternativ kann man mit der Funktion annotate
ein Rechteck auf einem Liniendiagramm zeichnen und den spezifischen Bereich des Plots hervorheben. Beachten Sie, dass, wenn die Skalen numerische Werte haben, die Argumente *min
/*max
die genauen Werte aus diesen Bereichen annehmen können.
library(ggplot2)
library(babynames)
library(dplyr)
dat <- babynames %>%
filter(name %in% c("Alice", "Maude", "Mae")) %>%
filter(sex=="F")
p1 <- ggplot(dat, aes(x = year, y = n, color = name)) +
geom_line() +
scale_y_continuous(
breaks = seq(0, 15000, 1000),
name = "Number of babies") +
ggtitle("Name Popularity Through Years") +
annotate("rect", xmin = 1960, xmax = 2000, ymin = -1, ymax = max(dat$n),
alpha = .2, fill = "orange")
p1
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook