如何使用R中的框突出显示由ggplot2创建的图中的文本?
在本文中,我们将讨论如何使用 R 编程语言中的框突出显示由 ggplot2 创建的图中的文本。
有很多方法可以做到这一点,但我们将专注于其中一种方法。我们将使用 R 中ggplot2包中的geom_label函数。该函数允许我们在文本下方创建一个矩形,以便于阅读。我们还可以突出显示矩形框内的文本,还可以使用此函数添加该文本的其他美感。这可以通过一行代码来实现,因此,它很容易并且值得推荐。
句法 :
geom_label( mapping = NULL, data = NULL, stat = “identity”, position = “identity”, …., parse = FALSE, nudge_x = 0, nudge_y = 0, label.r = unit( 0.15, “lines”), label.padding = unit( 0.25, “lines”), label.size = 0.25, na.rm = FALSE, inherit.aes = TRUE, show.legend = NA)
该方法简单明了,调用geom_label()函数并提供以下参数 - 文本美学、文本标签和填充参数以突出显示文本标签内的文本。
示例 1.1:示例显示常规绘图,以便差异明显。
R
library(ggplot2)
data(mtcars)
head(mtcars)
# Plotting the dataset in a scatterplot
ggplot(mtcars, aes(wt, mpg)) + geom_point(color="blue")
R
library(ggplot2)
data(mtcars)
head(mtcars)
# Plotting the data, adding the text and highlighting it
ggplot(mtcars, aes(wt, mpg)) + geom_point(color="blue") +
geom_label(aes(x=5, y=30, label = "GFG weight vs mileage"),
fill= "yellow")
R
library(ggplot2)
data(iris)
head(iris)
# Line plot
ggplot(iris, aes(Sepal.Length, Petal.Length)) + geom_line()
R
library(ggplot2)
data(iris)
head(iris)
# Adding the text and highlighting it
ggplot(iris, aes(Sepal.Length, Petal.Length)) + geom_line() +
geom_label(aes(x=7.5, y=7, label = "GFG Sepal vs Petal"),
fill= "red")
输出 :
现在,我们将添加文本并使用 geom_label函数在散点图中突出显示它,将文本的美感(例如 x 和 y 变量、文本标签以及框内突出显示文本的颜色)作为其参数。
示例 1.2:在图中绘制突出显示文本的示例
电阻
library(ggplot2)
data(mtcars)
head(mtcars)
# Plotting the data, adding the text and highlighting it
ggplot(mtcars, aes(wt, mpg)) + geom_point(color="blue") +
geom_label(aes(x=5, y=30, label = "GFG weight vs mileage"),
fill= "yellow")
输出 :
让我们再看一个实现。
示例 2.1:规则图,因此差异很明显
电阻
library(ggplot2)
data(iris)
head(iris)
# Line plot
ggplot(iris, aes(Sepal.Length, Petal.Length)) + geom_line()
输出 :
现在,我们将使用 geom_label函数添加文本并在我们的线图中突出显示它,该函数提供文本的美感作为参数。
示例 2.2:在图中绘制突出显示文本的示例
电阻
library(ggplot2)
data(iris)
head(iris)
# Adding the text and highlighting it
ggplot(iris, aes(Sepal.Length, Petal.Length)) + geom_line() +
geom_label(aes(x=7.5, y=7, label = "GFG Sepal vs Petal"),
fill= "red")
输出 :