5

我正在使用 R 使用 image.plot 绘制一组图。一切正常,除了我无法让 mtext() 显示主标题。使用 matplot() 对绘图数组使用非常相似的代码可以正常工作。

我正在使用的代码如下所示。

op <- par(mfrow = c(2, 2))
par(mar=c(5, 4, 4, 2) + 0.1)
par(oma = c(0,0,2,1))
for (i in 2:nout){
  image.plot(r,th,t(u[i,,]),xlab="r",ylab=expression(paste(theta)),
    zlim=c(0.1,0.9), main=paste("t = ",t[i]),col=pal)
} 
mtext(side=3, outer=TRUE, cex=1.25, line=2,expression(
  paste("u(t,r,",theta, ")")))

任何帮助表示赞赏。

4

3 回答 3

11

我也遇到了一些奇怪mtext()的问题image.plot()。我发现的一种解决方法是使用title()“重新参与”绘图设备,例如:

image.plot(x,y,z)
title("")
mtext("Title",side=3)

于 2012-12-07T20:05:27.587 回答
0

您将顶部外边距设置为 2 行宽,并尝试在第三行打印文本,因为line参数 frommtext开始于0

line:在哪条 MARgin 线上,从 0 开始向外计数。

于 2012-10-15T12:38:13.183 回答
0

这是一个肮脏的黑客,但它至少对我有用。

plot(0,0, type='n', xaxt='n', yaxt='n', xlab='', ylab='', bty='n')  # make an empty plot
mtext("Whatever you want in the margin", side=mySide)
par(new=T)
image.plot(…)   # fill in your image plot here
于 2013-03-30T17:52:59.687 回答