如何在 ggplot2 中绘制箭头(附示例)


您可以使用以下基本语法在 ggplot2 的图中绘制箭头:

 library (ggplot2)

ggplot(df, aes(x=x, y=y)) +
  geom_point() +
  geom_segment(aes(x= 5 , y= 6 , xend= 8 , yend= 9 ), arrow = arrow(length=unit( 0.5 , ' cm ')))

以下是geom_segment()函数中每个参数的作用:

  • x :开始的 x 值
  • y :起始 y 值
  • xend :结束的 x 值
  • Yind :结束的 y 值
  • arrow : 箭头尖端的长度

以下示例展示了如何在实践中使用 ggplot2 绘制箭头。

示例:在 ggplot2 中绘制箭头

假设我们有以下数据库,其中包含各个篮球运动员的得分和篮板数信息:

 #create data frame
df <- data. frame (points=c(3, 3, 5, 6, 7, 8, 9, 9, 8, 5),
                 rebounds=c(2, 6, 5, 5, 8, 5, 9, 9, 8, 6))

#view data frame
df

   rebound points
1 3 2
2 3 6
3 5 5
4 6 5
5 7 8
6 8 5
7 9 9
8 9 9
9 8 8
10 5 6

我们可以使用以下语法在 ggplot2 中创建散点图,并在绘图上的特定位置添加箭头:

 library (ggplot2)

#create scatterplot and add arrow
ggplot(df, aes(x=points, y=rebounds)) +
  geom_point() +
  geom_segment(aes(x= 5 , y= 6 , xend= 8 , yend= 9 ), arrow = arrow(length=unit( .5 , ' cm '))) 

在ggplot2中画一个箭头

请随意更改arrow()函数中的值以增大或减小箭头的大小。

例如,以下代码显示了如何增加大小:

 library (ggplot2)

#create scatterplot and add arrow with increased arrow head size
ggplot(df, aes(x=points, y=rebounds)) +
  geom_point() +
  geom_segment(aes(x= 5 , y= 6 , xend= 8 , yend= 9 ), arrow = arrow(length=unit( 2 , ' cm '))) 

您还可以使用colorlwd参数分别更改箭头的颜色和线宽:

 library (ggplot2)

#create scatterplot and add customized arrow
ggplot(df, aes(x=points, y=rebounds)) +
  geom_point() +
  geom_segment(aes(x= 5 , y= 6 , xend= 8 , yend= 9 ), arrow = arrow(length=unit( .5 , ' cm ')),
               color=' red ', lwd= 3 ) 

请随意使用geom_segment()函数的不同参数来创建看起来与您想要的完全一样的箭头。

其他资源

以下教程解释了如何在 ggplot2 中执行其他常见任务:

如何删除ggplot2中的网格线
如何在ggplot2中对区域进行着色
如何更改ggplot2中的X轴标签

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注