【发布时间】:2019-03-22 00:21:46
【问题描述】:
考虑下图:
require(ggplot2)
ggplot(iris, aes(Sepal.Length, Sepal.Width)) + geom_point() +
labs(title = 'Iris[small font]' ) +
theme_classic()
左图是代码输出,右图显示想要的结果,我用 Adobe Illustrator 做的
问题是,如果可以改变字体大小in line,在这个例子中是标题中的“[small font]”标签,当然这也是一个普遍的问题关于其他标签,例如轴和图例等。
显然,字体大小是用theme() 设置的。但是,可能有一种方法可以设置“相对字体大小”,例如使用rel() 并以某种方式将其与贴标功能一起使用??
【问题讨论】:
-
不直接使用 ggplot2。看看
gridtext。将它与 SO 上的大量 grob-hacking hack 之一结合使用,将标题 grob 替换为gridtext创建的内容,可能会帮助您以您想要的方式获得标题。 -
稍微修改了标题以获得更好的谷歌搜索结果
-
感谢您的建议!但我实际上是在问是否有更通用的方法来改变文本大小,也可用于轴等。但我想这太笼统了。我喜欢您针对我的特定标题问题的解决方案,我可能会接受,但仍会等待更长的时间:)
-
请随意等待,但所有 ggplot2 文本几何图形和绘图注释 grobs 都使用单个文本 grob 元素(请查看我的答案评论中指出的来源)。网格文本 grobs 有 single aesthetic mappings.