要解决你的问题,你必须知道你的legend
有多大和修复X轴范围相应。要做到这一点,你需要绘制一个空的图和空的图例,并将图例分配给一个对象。这样,您就可以访问图例的尺寸。然后,您重绘自定义的X轴范围与xlim
情节。
#Generate data
x <- seq(0,22,length=1000)
y <- dnorm(x,mean=10, sd=0.5)*4000
#Plot empty plot, get legend size
par(xpd=TRUE)
plot(x,y, type="n", axes=F, xlab="", ylab="")
my.legend.data <-legend(x=16.8,y=2600,legend=c("North","East","West","North_East","North_West","East_West"),
lwd=2,col=c("red", "blue", "green","black","pink","Orange"), plot=FALSE)
#plot chart with custom xlim that will fit legend
my.x.range <-c(min(x),my.legend.data$rect$left+my.legend.data$rect$w)
plot(x,y, type="l", lwd=1, xlim=my.x.range)
legend(x=16.8,y=2600,legend=c("North","East","West","North_East","North_West","East_West"),
lwd=2,col=c("red", "blue", "green","black","pink","Orange"))
回顾'传说中的'x.intersp'参数()',它会帮助使传说不一样宽。至于沿x轴控制图例,还请查看'inset'参数。 – ccapizzano 2015-03-31 01:45:13
感谢您的评论。使用x.intersp - 我可以控制图例框中线和文本之间的距离。我也尝试y.intersp - 我可以控制在Y轴方向的两个传说的文本之间的距离。 现在的问题是如何降低一个传奇禁区线长度,使整体框将在地块。我期待更多关于插图的帮助。 – 2015-03-31 11:30:07
如果我想在分裂我的文字两行,那么我应该有什么关系? – 2015-03-31 12:04:11