R 向ggplot2中的条形图(离散x轴)添加线段

R 向ggplot2中的条形图(离散x轴)添加线段,r,ggplot2,bar-chart,R,Ggplot2,Bar Chart,我正在尝试使用ggplot2在条形图的每个条形上绘制线段。我知道如何用一个连续的X轴来做这件事,但不是用这个离散的轴。 我所做的是一种“黑客”行为,用文字排成一行 在图片中看起来不错,但我没有得到“极限”金属浓度的图例,最重要的是,每次我放大或缩小时,片段的长度都会改变 有人知道哪种几何体可以更好地实现这一点吗? 编辑: 这个问题几乎是一个这里有一个方法 ggplot(data=df) + aes(x=metal) + geom_bar(aes(y=observed), stat="id

我正在尝试使用
ggplot2
在条形图的每个条形上绘制线段。我知道如何用一个连续的X轴来做这件事,但不是用这个离散的轴。 我所做的是一种“黑客”行为,用文字排成一行

在图片中看起来不错,但我没有得到“极限”金属浓度的图例,最重要的是,每次我放大或缩小时,片段的长度都会改变

有人知道哪种几何体可以更好地实现这一点吗?

编辑:

这个问题几乎是一个

这里有一个方法

ggplot(data=df) + aes(x=metal) + 
  geom_bar(aes(y=observed), stat="identity", fill="grey", color = "grey60") +
  geom_bar(data = df, aes(y=limit), stat="identity", fill="transparent", color = "grey30") +
  geom_text(aes(y = limit +5), label = df$limit)
改编自


使用
geom_errorbar(aes(y=limit,ymin=limit,ymax=limit))
@scoa感谢它能完美工作。你有关于如何获得“限制”图例的线索吗?(+1)谢谢@lawyeR这是一个显示限制矩形的非常好的建议。我想接受这两个答案,但scoa的答案与最初的请求最接近,并显示我的图例。
ggplot(data=df) + aes(x=metal) + 
  geom_bar(aes(y=observed), stat="identity", fill="grey", color = "grey60") +
  geom_bar(data = df, aes(y=limit), stat="identity", fill="transparent", color = "grey30") +
  geom_text(aes(y = limit +5), label = df$limit)
ggplot(data=df) + aes(x=metal) + 
  geom_bar(aes(y=observed), stat="identity", fill="grey") +
  geom_errorbar(aes(y=limit,ymin=limit,ymax=limit,colour="limit"))