R绘图图例:减少图例列之间的间距

5

我正在使用vegan库绘制一些图表,使用以下代码:

raremax <- min(colSums(mydata))
col <- palette()
lty <- c("solid", "dashed", "longdash", "dotdash")
pars <- expand.grid(col = col, lty = lty, stringsAsFactors = FALSE)

out <- with(pars[1:18, ], rarecurve(mydata, step = 100, sample = raremax, 
       cex =0.6, ylab="OTUs", label=F, col=col, lty=lty, lwd=2))

然后我使用以下代码添加图例:
legend("bottomright", names(mydata), col=pars[1:18,1], lty= pars[1:18,2], 
       lwd=2, cex=0.5, xjust=1, ncol=2, x.intersp=0.5, y.intersp=0.5, bg="white")

生成的图表看起来像这样:enter image description here 我想减少图例列之间的间距,同时缩小图例框的大小,但是我找不到方法去实现。有人能提供帮助吗?

你可以通过bty = "n"参数来移除图例框。 - Richard Telford
1个回答

14

结合使用legend()函数的参数"x.intersp"和"text.width"将会很有帮助。

减小"x.intersp"的值(默认值为1,我认为0.25效果较好)可以让图例标签更靠近它们对应的点。减小"text.width"的值(默认值为NULL,我认为0.045效果较好)可以让列之间更加紧密。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接