【发布时间】:2014-07-06 16:17:48
【问题描述】:
我有一个带有多个面板的格子条形图,我想在条形顶部添加每个条形的总和(例如,(70) 在左上角第一个条形的顶部,(20) 在第二个一个,(150) 第三个等等)。
这里有一个类似的question,但我找不到一种方法来调整该代码以适应我的情节。与该示例不同,我想做的是在每个条形垂直条的顶部添加男性和女性的“总和”。我也无法使用ltext 分别标记它们,如here 所示。任何建议,使用ltext 或任何其他方式,都会非常有帮助。
civ1<-c("Single","Single","Marr","Marr","Single","Single","Marr","Marr","Single","Single","Marr","Marr","Single","Single","Marr","Marr")
Sex<-rep(c("women","men"),8)
Year<-rep(c(rep(1990,4),rep(2000,4)),2)
Type1<-c(rep("Traditional",8),rep("Dual-earner",8))
Earn1<-c(seq(10, 160, by = 10))
df<-as.data.frame(cbind(civ1,Sex,Year,Type1,Earn1))
df$Earn1<-as.numeric(levels(df$Earn1))[df$Earn1]
my.key<-list(space="bottom",text=list(c("Women","Men"),col=c("black","black")), columns=2,points=T,pch=15,col=c("darkgray","lightgray"),cex=0.8)
labels=c("70","20","150","110")
print(figure1<-barchart(Earn1~civ1|Year+Type1,df,groups=Sex, ylim=c(0,350),horizontal=F,col=c("darkgray","lightgray"),cex=0.8,ylab="Earnings",stack=T,layout=c(2,2),key=my.key,
par.settings = list(strip.background=list(col=c("white","lightyellow")),
panel=function(x,y,subscripts...){
panel.grid(h=-1,v=0)
panel.barchart(...)
ltext(1,200, labels[subscripts]) #not working!
})))
【问题讨论】: