[英]ggplot2 annotation with dates in x-axis
我正在尝试绘制一系列百分比值的面积图,在设定的时间内每天绘制一个。 我想在图的顶部添加一个段,以更清楚地显示%下降的区域。
我尝试使用此代码(为简单起见,该示例仅包含几个数据点):
library(ggplot2)
library(scales)
limit = c(0.85,0.87,0.88,0.90,0.72,0.74)
day <- as.Date(strptime((seq(20150201,20150206,1)),format = "%Y%m%d"))
dati = data.frame("Day" = day, "Limit" = limit)
g <- ggplot(data = dati, aes(Day, Limit))
g <- g + geom_area(fill = "dark red")
g <- g + coord_cartesian(ylim = c(0,1))
g <- g + scale_y_continuous(labels=percent)
g <- g + annotate("segment", y= 1, yend = 1, x = dati[3, "Day"], xend = dati[4, "Day"])
print(g)
但我收到此错误: 错误:/未为“日期”对象定义
关于如何解决这个问题的任何想法?
我已经检查过如何在X轴上使用带有日期的ggplot2注释? ,但错误似乎又回来了。 另外,我想不使用lubridate软件包就这样做。
将我先前的评论包装成一个答案:改用geom_segment
。
+ geom_segment(y = 1, yend = 1,
x = as.numeric(dati[3, "Day"]), xend = as.numeric(dati[4, "Day"]))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.