在R中添加部分水平线和ggplot2

rns*_*nso 6 r ggplot2

我有以下数据:

mydf = read.table(text="
name a b
x 10 15
y 20 25
z 35 45
", header = T)
Run Code Online (Sandbox Code Playgroud)

我想创建一个如下图:

情节例子

我无法在x = 50处从点到垂直线添加水平线.这些线(蓝色)已在上图中手动绘制.我尝试了下面的代码,但它不起作用:

ggplot(mydf, aes(a, b)) + geom_point()+ 
     geom_vline(xintercept=50)+ 
     geom_line(aes(x=50,y=b, group=name))
Run Code Online (Sandbox Code Playgroud)

rcs*_*rcs 9

试试geom_segment:

ggplot(mydf, aes(a, b)) +
  geom_point()+ 
  geom_vline(xintercept=50) + 
  geom_segment(aes(x=a, xend=50, y=b, yend=b), colour="blue")
Run Code Online (Sandbox Code Playgroud)

情节