📌  相关文章
📜  如何在 R 中的 ggplot2 中注释绘图?

📅  最后修改于: 2022-05-13 01:54:27.249000             🧑  作者: Mango

如何在 R 中的 ggplot2 中注释绘图?

在本文中,我们将讨论如何在 R 编程语言中对 ggplot2 中的绘图进行注释。

注释有助于提高绘图的可读性。它允许向绘图添加文本或突出显示曲线的特定部分。最常见的注释形式是文本。让我们首先绘制一个没有任何注释的常规图,以便差异明显。

方法一:使用 geom_text()

这允许仅将文本注释到绘图中。该函数连同所需的参数被添加到绘图中。

要使用此函数注释,首先创建值的数据帧,然后参考如此创建的数据帧将值传递给 geom_title()。

例子:

R
library("ggplot2")
  
x<-c(1, 2, 3, 4, 5)
y<-c(10, 30, 20, 40, 35)
  
df<-data.frame(x, y)
  
ann_text<-data.frame(
    x = 4, y = 20,
    label = "geeks for geeks"
)
  
ggplot(df, aes(x,y))+geom_line()+
geom_text(data = ann_text, 
          aes( x=x, y=y, label=label),
          color="green", size=5)


R
library("ggplot2")
  
x<-c(1, 2, 3, 4, 5)
y<-c(10, 30, 20, 40, 35)
  
df<-data.frame(x, y)
  
ann_text<-data.frame(
    x = 4, y = 20,
    label="geeks for geeks"
)
  
ggplot(df,aes(x,y))+geom_line()+
geom_label(data = ann_text,
           aes( x = x, y = y, label=label),
           color="green", size=5)


R
library("ggplot2")
  
x<-c(1, 2, 3, 4, 5)
y<-c(10, 30, 20, 40, 35)
  
df<-data.frame(x,y)
  
  
ggplot(df,aes(x,y))+geom_line()+annotate(
  "text", x=3.5, y=20, label="geeks for geeks",
  color="green", size=5)


R
library("ggplot2")
  
x<-c(1,2,3,4,5)
y<-c(10,30,20,40,35)
  
df<-data.frame(x,y)
  
  
ggplot(df,aes(x,y))+geom_line()+annotate(
  "segment", x=2, xend=4.5, y=10,yend=25, 
  color="green", arrow=arrow())


输出:

方法二:使用 geom_label()

此函数用于添加标签,即文本框在图中,但由于它完成添加注释的工作,因此可以将其视为一种替代方法。

这种方法类似于上面的方法,除了为此产生的输出将被视为标签而不是常规文本,并且周围会有一个边界。

例子:

电阻

library("ggplot2")
  
x<-c(1, 2, 3, 4, 5)
y<-c(10, 30, 20, 40, 35)
  
df<-data.frame(x, y)
  
ann_text<-data.frame(
    x = 4, y = 20,
    label="geeks for geeks"
)
  
ggplot(df,aes(x,y))+geom_line()+
geom_label(data = ann_text,
           aes( x = x, y = y, label=label),
           color="green", size=5)

输出:

方法 3:使用 annotate()

annotate()函数是最常用的向绘图添加注释的函数。这不仅允许在绘图上显示文本,还允许显示形状。

要将文本注释到绘图中,将“文本”作为类型传递,并在标签参数中传递要注释的文本。

例子:

电阻

library("ggplot2")
  
x<-c(1, 2, 3, 4, 5)
y<-c(10, 30, 20, 40, 35)
  
df<-data.frame(x,y)
  
  
ggplot(df,aes(x,y))+geom_line()+annotate(
  "text", x=3.5, y=20, label="geeks for geeks",
  color="green", size=5)

输出:

要将形状注释到绘图中,需要使用所需类型传递 type 参数,然后相应地设置坐标。

例子:

电阻

library("ggplot2")
  
x<-c(1,2,3,4,5)
y<-c(10,30,20,40,35)
  
df<-data.frame(x,y)
  
  
ggplot(df,aes(x,y))+geom_line()+annotate(
  "segment", x=2, xend=4.5, y=10,yend=25, 
  color="green", arrow=arrow())

输出: