我有一些在 0.8.9 中运行良好但在 0.9.1 中运行良好的 ggplot 代码。
我将在其中绘制数据,theDF
并想在xintercept="2010 Q1."
theGrid
仅用于创建的位置绘制一条垂直线theDF
。
theGrid <- expand.grid(2009:2011, 1:4)
theDF <- data.frame(YrQtr=sprintf("%s Q%s", theGrid$Var1, theGrid$Var2),
Minutes=c(1000, 2200, 1450, 1825, 1970, 1770, 1640, 1920, 1790, 1800, 1750, 1600))
使用的代码是:
g <- ggplot(theDF, aes(x=YrQtr, y=Minutes)) +
geom_point() +
opts(axis.text.x=theme_text(angle=90))
g + geom_vline(data=data.frame(Vert="2010 Q2"), aes(xintercept=Vert))
同样,这在具有 ggplot2 0.8.9 的 R 2.13.2 中运行良好,但在具有 ggplot2 0.9.1 的 R 2.14+ 中却不行。
一种解决方法是:
g + geom_vline(data=data.frame(Vert=4), aes(xintercept=Vert))
但这不是解决我的问题的好方法。
也许乱来scale_x_discrete
可能会有所帮助?