ggplot2
,?ggplot2::rel()
问题。
rel(5)
说
rel()用于指定相对于父级的大小。
什么是"父母"究竟?例如,我喜欢将我的情节标题的大小设置为.pt
。我的标题宽度是多少英寸?
我注意到有两个"单位"我相信某种方式在ggplot2 rel()
中用作相关大小。我认为.pt
和.pt
之间存在某种关系。 2.845276
等于{{1}}。为什么??而2.845276是什么?像素?
答案 0 :(得分:3)
父母在help("theme")
中定义。请注意文档中所说的大多数参数"继承自......"。这是面向对象的编程。
例如,axis.text
是axis.text.x
的父级:
library(ggplot2)
library(gridExtra)
DF <- data.frame(x = 1, y = 2)
p1 <- ggplot(DF, aes(x, y)) + geom_point()
p2 <- p1 + theme(axis.text.x = element_text(size = rel(2)))
p3 <- p2 + theme(axis.text = element_text(size = 5))
grid.arrange(p1, p2, p3, ncol = 1)
答案 1 :(得分:1)
父元素是当前主题绘制的图形本身。您可以使用rel()
来缩放与父对象相关的任何内容,而父对象不是数据的一部分(标题,轴等)。
它专门用于相对于当前情节的主题的其余部分缩放内容。
正如你可能期望的那样,对于相对来说,相对来说,它没有绝对尺寸,而不是英寸或厘米。但您可以使用它来扩展您的情节标题,如下所示:
g + theme(plot.title = element_text(size = rel(5)))
其中g是你要添加东西的情节。
这告诉ggplot缩放你的情节标题中的文字,以相对于主题的其余部分将其缩放5。您也可以使用小数缩小它。这些数字有点奇怪,比如线条大小或字形大小,最好的办法是尝试一些,看看是什么让你最接近你想去的地方!
答案 2 :(得分:1)
关于2.845276
,
all.equal(convertUnit(unit(1,"mm"),"pt", valueOnly = TRUE), ggplot2::.pt)