【发布时间】:2015-10-14 05:17:42
【问题描述】:
我有一个数据框,其中包含“时间”、0-2000 x 5 的间隔(x 轴)和“步数”,范围为 0-200。我正在使用 qplot,我想在最大步数处绘制 geom_vline。它正在绘制一条线,但处于一个我无法弄清楚的低点。代码如下所示:
这是一个相当糟糕的游戏,但它仍然很适合。
set.seed(2)
a<-seq(from=0,to=1000,by=5)
b<-sample(seq(from = 0, to = 100), size = 201, replace = TRUE)
df<-data.frame(a,b)
max(b)
qplot(a,b,df, geom='line')+
geom_vline(xintercept=max(df$b),color='red')
您可以看到max(b)=99,但geom_vline 没有绘制在那里。
【问题讨论】:
-
@ Pascal 也许,但这些更精细的点目前超出了我的范围......我只是想绘制一个折线图,以及一条与 x 轴相交的垂直线,其中 y价值是最大的。如果这涉及到废弃这段代码,那就这样吧。
-
不干净,但做你想做的事:
geom_vline(xintercept=a[b == max(b)],color='red'). -
@Pascal 这不是最精简的,但可以解决问题,我认为您在上一篇文章中的评论澄清了我最初的方法不起作用的原因。明天我将尝试 ggplot 而不是 qplot。谢谢!
标签: r plot ggplot2 max linegraph