使用边距/填充自动放置图例框

Rub*_*ens 7 plot r legend

我正试图在一个情节中自动放置一个传奇盒子,但我仍然遇到麻烦.我想将图例框放在靠近图的角落,但是有一个小的填充/边距.

使用预定义的位置,比如"topright""bottomleft",将图例放置得太近/在图的边界上,就像这里一样; 我发现它令人惊讶的不安保持对像素试图像素达到一个很好的位置,以框,如图所示这里.

我想知道是否有根据绘图本身的宽度定位图例框,而不是max/min值.可以自动将图例定位在p%靠近定义的角落的东西.无论如何在R中这样做?或者甚至可以在预定位置添加一些填充?

the*_*ail 12

使用inset=选项legend

插图:当按关键字放置图例时,边距的插入距离(作为绘图区域的一部分).

例如:

plot(1:10)
legend("topleft","blah",inset=0.05)
Run Code Online (Sandbox Code Playgroud)

如果你想确保图例与角落的距离相同,取决​​于你的情节的x:y比例,你可以做一些更复杂的事情,如:

plot(1:10)
xyratio <- do.call("/",as.list(par("pin")))
inset.amount <- 0.05
legend("topleft","blah",inset=c(inset.amount,inset.amount * xyratio))
Run Code Online (Sandbox Code Playgroud)

当您调整绘图设备的大小时,这将会崩溃.

在此输入图像描述

  • @MichaelChirico像永远一样,ma tanto!:d (3认同)