调整图标题(主)位置

Rob*_*all 43 plot r

我一直无法找到一种方法来调整R中的绘图和主标题之间的(垂直)距离.在这个例子中:

plot(1, 1, main = "Title")
Run Code Online (Sandbox Code Playgroud)

我可以使用以下方法调整轴标题的位置:

par(mgp = c(2.5, 1, 0))
Run Code Online (Sandbox Code Playgroud)

但我认为没有办法同样调整主标题.我知道可以使用title或更多的手动控制mtext,但我认为有一种方法使用par设置标题距离,这对我的目的来说会更优雅.

zx8*_*754 74

我们可以使用title()负值line函数来降低标题.

看这个例子:

plot(1, 1)
title("Title", line = -2)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述


Den*_*lev 35

总结并在视觉上解释它是如何工作的.代码构造如下:

par(mar = c(3,2,2,1))
barplot(...all parameters...)
title("Title text", adj = 0.5, line = 0)
Run Code Online (Sandbox Code Playgroud)

说明:

par(mar = c(low, left, top, right)) - margins of the graph area.

title("text" - title text
      adj  = from left (0) to right (1) with anything in between: 0.1, 0.2, etc...
      line = positive values move title text up, negative - down)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述


小智 16

试试这个:

par(adj = 0)
plot(1, 1, main = "Title")
Run Code Online (Sandbox Code Playgroud)

或同等学历:

plot(1, 1, main = "Title", adj = 0)
Run Code Online (Sandbox Code Playgroud)

adj = 0生成左对齐文本,0.5(默认)居中文本和1右对齐文本.[0, 1]允许任何值.

但问题是,这也会改变x轴和y轴标签的位置.

  • `但是,问题是这也会改变x轴和y轴标签的位置....这可以通过简单地使用`title(main = x)为标题调用一个单独的函数来解决. ,adj = ......)` (4认同)