2012-08-16 79 views
5

我有一个ggplot图,我想插入0以下的自定义字符串作为“内”和0以上的“违反”。插入自定义文本到ggplot2

我这样做:

ggplot(z, aes(Date, Breach1/60, group=Jobs, label=c("Within SLA", "Breached SLA"))) + 
geom_line(size=1) + 
theme_bw() + ylab("Hours") + xlab("Date") + opts(title="Jobs") + 
geom_hline(yintercept=0, color="red", size=2) + geom_text(hjust=0, vjust=3) 

这似乎把文本所有的地方。我喜欢将一个文本放在零以上,一个文本放在零值以下。有任何想法吗?

+1

您应该包括样本数据,并附上图,使我们可以重新创建您的问题,并提供解决方案。 – Idr 2012-08-16 19:35:20

回答

12

你是注释后:

ggplot(z, aes(Date, Breach1/60, group=Jobs)) + 
geom_line(size=1) + 
theme_bw() + ylab("Hours") + xlab("Date") + opts(title="Jobs") + 
geom_hline(yintercept=0, color="red", size=2) + 
annotate("text", label = "Within SLA", x = 1, y = 2) + 
annotate("text", label = "Breached", x = 1, y = -2) 
+0

这很好,但是当我把x和y的值,我的图表回到日期。我该如何放置x和y值,以便我的图表不会改变? – user1471980 2012-08-16 19:43:13

+1

@ user1471980好吧,既然您没有提供我不得不猜测的数据,只需将注释中的x更改为您需要的任何数据即可。 – 2012-08-16 19:46:35

+0

谢谢你的回答 – user1471980 2012-08-16 20:12:39