2013-05-13 50 views
2

我已經找了一個這個的答案,但沒有找到一個 - 我使用ggplot2繪製一系列密度 後,我需要獲取x和y的尺度,這樣我就可以在左上角標註 - 這裏是我的代碼:如何在初始繪圖層生成後在ggplot中獲取刻度

gg= qplot(ExpRef,geom='density',color=IOL,fill=IOL,alpha=0.8,data=tmp2, 
     main=mtitle,xlab ="Expected Refraction",cex.axis=3.0,font.axis = 2) #bold and cesx = multiplier); 
ggp = gg + geom_vline(data=data.frame(x=0,y=0),xintercept=means, lwd= 2,color=I("red")) ; 
ggp = gg + geom_vline(data=data.frame(x=0,y=0),xintercept=PlanRef, lwd= 2,color=I("green")) ; 
ggp = ggp + annotate("text",x=PlanRef, y = 1, label=paste('Planned Refraction'),angle=90,size=7.0,colour='black', hjust = 0, vjust = 0) 

ggp = ggp + annotate("text",x=SRKTRef, y = 0,label=paste('SRKT IOL-->'),angle=90,size=6.0,colour='yellow', hjust = 0, vjust = 0); 
  • 所以在最後一行,我需要知道y的最大值放置在註解圖形的上半部分 - 是否有一種方法可以獲取密度圖層中計算出的比例? 感謝
+1

歡迎計算器。請在您的問題中提供一個可完全重現的簡化示例。 – 2013-05-13 15:09:03

回答

3

在繪圖區域的邊界註釋,你可以使用-Inf(左/下)或+Inf(右/上):

qplot(1:10, rnorm(10)) + 
annotate("text", x=Inf, y=-Inf, 
     label="bottom-right", vjust=-0.5, hjust=1) 
+0

感謝 - 這應該工作,但我仍然喜歡訪問秤 – gpc 2013-05-13 17:51:54

+0

縮放會隨着添加新圖層而改變,但一旦ggplot完成,您可以執行'ggplot_build(p)'並從那裏提取比例。 – baptiste 2013-05-13 17:55:39

+0

謝謝,這是我需要的 – gpc 2013-05-14 19:42:42