如何在图中绘制垂直线段?

时间:2019-02-05 02:32:26

标签: r

我有一个plot(x,y),我想在y = 1到4之间仅在x = 2处添加一条垂直线。我想使用lines()函数,但是在限制y上遇到麻烦-范围。

什么是简单的方法?

3 个答案:

答案 0 :(得分:2)

这是使用plotlines的简单示例。要从(2, 1)(2, 4)画一条线,必须提供x坐标和y坐标分别为(2, 2)(1, 4)

plot(1:5)
lines(c(2, 2), c(1, 4))

enter image description here

答案 1 :(得分:0)

ggplot2也提供了一个非常简单的解决方案!

library(ggplot2)
# Create some dummy data
data.frame(X = rpois(n = 10, lambda = 3), 
           Y = rpois(n = 10, lambda = 2)) %>% 
# Pipe to ggplot
    ggplot(aes(X, Y)) + 
    geom_point() + 
    geom_segment(aes(x = 1, xend = 1, y = 1, yend = 4), color = "red")

在对geom_segment()的美学呼吁中,您可以为x和y参数选择起点和终点。然后,您只需在上面的代码末尾添加+ geom_segment(aes(...)),即可轻松添加多个细分。

答案 2 :(得分:0)

为完整起见,R中还有一个基本的图形功能可以做到这一点:segments(x0,y0,x1,y1):

plot(1:5)
segments(2,1,2,4)