【发布时间】:2014-07-27 18:18:01
【问题描述】:
我想在具有多个绘图的设备的绘图区域之外绘制一个居中的图例。 SO中有很多关于改变R图中图例位置的问题(略有不同)。
例如:
1) R - Common title and legend for combined plots
2)Common legend for multiple plots in R
3)Plot a legend outside of the plotting area in base graphics?
等等
现在我从上述问题中了解到,我必须设置选项 xpd = T 或 xpd = NA 以在外边缘绘制图例。但是,当我尝试这个时,它对我不起作用..
par(mfrow=c(1,2),oma=c(0,3,0,0),xpd=TRUE)
plot(c(5,10),col=c("red","blue"),pch=20,cex=2,bty="n",xlab="",ylab="")
barplot(c(5,10),col=c("red","blue"))
mtext(text="My two plots",side=3,cex=2,outer=TRUE,line=-3)
legend("top",legend=c("A", "B"),fill=c("red","blue"),ncol=2,xpd=NA,bty="n") # Option 1
legend(x=0.01,y=11,legend=c("A", "B"),fill=c("red","blue"),ncol=2,xpd=TRUE,bty="n") # Option 2
现在我的问题是,xpd 究竟是如何工作的?因为我无法弄清楚为什么不应该将图例放在 xpd=T 的情节区域之外。
如果有人认为这是上述问题的重复,我提前道歉!
非常感谢您的帮助
阿什温
【问题讨论】: