在 R 中的多个图表的外部添加图例

Posted

技术标签:

【中文标题】在 R 中的多个图表的外部添加图例【英文标题】:Adding a legend to the outside of a multiple graph plot in R 【发布时间】:2014-05-15 07:19:26 【问题描述】:

我正在尝试在 R 中的绘图外部添加一个图例。

我使用的是:

png(height=400,width=842,"./rainfall.png")
par(family="serif",mar=c(4,6,4,1),oma=c(1,1,1,6),mfrow=c(1,2))

我创建我的情节,然后:

par(xpd=TRUE)
legend(x="topright",inset=c(-0.2,0),c("4 year moving average","Simple linear trend"),lty=1,col=c("black","red"),cex=1.2)
legend("topleft",c("Annual total"),pch="*",col="blue",cex=1.2)

dev.off()

当我这样做时,虽然图例在右侧被切断,如下图所示。如何让图例在情节之外可见?

http://imgur.com/rpgVyrA

只是想让你知道,我一直在尝试这个帖子中的建议,但它们对我不起作用:Plot a legend outside of the plotting area in base graphics?

任何帮助将不胜感激, 席亚拉

【问题讨论】:

阅读这个? Common legend for multiple plots in R 【参考方案1】:

?par,寻找xpd

一个逻辑值或 NA。如果为 FALSE,所有绘图都被剪裁到绘图区域,如果为 TRUE,所有绘图都被剪裁到图形区域,如果为 NA,所有绘图都被剪裁到设备区域。另见剪辑。

使用xpd=NA,这样图例就不会被绘图或图形区域截断。

legend(x="topright",inset=c(-0.2,0),c("4 year moving average",
"Simple linear trend"),lty=1,col=c("black","red"),cex=1.2, xpd=NA)

结果:

【讨论】:

以上是关于在 R 中的多个图表的外部添加图例的主要内容,如果未能解决你的问题,请参考以下文章

使用 R 中的 Visreg 包更改图例位置

在报表生成器中更改图表中的图例

如何将带有图例键的数据表添加到 C# 中的 MS 图表?

R Highcharter:用同步缩放/工具提示分隔图例或多个图表的巧妙方法?

Aspen plus中的Template怎么没有图例啊?

excel图表图例怎么设置