在回答最近的可视化问题时,我真的需要大括号来显示轴上的跨度,我无法弄清楚如何在ggplot2中执行此操作.这是情节:

而不是刻度线,我真的很喜欢y轴标签"双字母名字的第二个字母",从1到10(红色和蓝色第二个字母的垂直跨度)的支撑.但我不确定如何实现这一目标.x轴可以受益于类似的治疗.
代码在链接的CrossValidated问题中可用(并且对于此示例而言不必要地复杂,因此我不会显示它).相反,这是一个最小的例子:
library(ggplot2)
x <- c(runif(10),runif(10)+2)
y <- c(runif(10),runif(10)+2)
qplot(x=x,y=y) +
scale_x_continuous("",breaks=c(.5,2.5),labels=c("Low types","High types") )
Run Code Online (Sandbox Code Playgroud)

在这种情况下,对于低类型的(0,1)和对于高类型的(2,3)的大括号将是理想的而不是刻度标记.
我宁愿不使用,geom_rect因为:
我怎么做到这一点?完美的答案是:
breaks选项的范围类型对象scale_x_continuous)我在R中创建一个图,需要创建一条线,其中一些值是投影.投影用虚线表示.这是代码:
df = data.frame(date=c(rep(2008:2013, by=1)),
value=c(303,407,538,696,881,1094))
ggplot(df, aes(date, value, width=0.64)) +
geom_bar(stat = "identity", fill="#336699", colour="black") +
ylim(c(0,1400)) + opts(title="U.S. Smartphone Users") +
opts(axis.text.y=theme_text(family="sans", face="bold")) +
opts(axis.text.x=theme_text(family="sans", face="bold")) +
opts(plot.title = theme_text(size=14, face="bold")) +
xlab("Year") + ylab("Users (in millions)") +
opts(axis.title.x=theme_text(family="sans")) +
opts(axis.title.y=theme_text(family="sans", angle=90)) +
geom_segment(aes(x=2007.6, xend=2013, y=550, yend=1350), arrow=arrow(length=unit(0.4,"cm")))
Run Code Online (Sandbox Code Playgroud)
所以我创建了一条从2008年到2013年延伸的生产线.但是,我想要一条从2008年到2011年的实线,以及从2011年到结束的虚线.我只是做两个单独的线段,或者是否有一个单独的命令我可以用来获得所需的结果.