如何在多面板图中的 Y 轴上方添加图形标签

问题描述 投票:0回答:1

如何在 Y 轴正上方添加 A)、B)、C)、D)。

a <- seq(1, 29) + 4*runif(29, 0.4)
b <- seq(1, 29)^2 + runif(29, 0.98)

#Divide the screen in 2 columns and 2 lines
par(mfrow=c(2, 2))

#Add a plot in each sub-screen !
plot(a, b , pch=20)
plot(a - b , pch=18)
hist(a, border=FALSE, col=rgb(0.2, 0.2, 0.8, 0.7), main="")
boxplot(a , col="grey" , xlab="a")

我尝试了一些方法,比如使用

locator()
找到坐标,然后使用
text()
。它们效果不佳。

r plot label
1个回答
0
投票

使用

mtext
par()$usr
有助于获取绘图区域。

op <- par(mfrow=c(2, 2))  ## change pars

## panel A
plot(a, b , pch=20)
mtext('A)', side=3, at=par()$usr[1], line=1)

## panel B
plot(a - b , pch=18)
mtext('B)', side=3, at=par()$usr[1], line=1)

## panel C
hist(a, border=FALSE, col=rgb(0.2, 0.2, 0.8, 0.7), main="")
mtext('C)', side=3, at=par()$usr[1], line=1)

## panel D
boxplot(a , col="grey" , xlab="a")
mtext('D)', side=3, at=par()$usr[1], line=1)

par(op)  ## reset pars

© www.soinside.com 2019 - 2024. All rights reserved.