R 动态换行和/或收缩可变宽度字体标题和标签以适应ggplot2

R 动态换行和/或收缩可变宽度字体标题和标签以适应ggplot2,r,ggplot2,R,Ggplot2,我正在以自动化的方式生成大量GGPlot(用于调查代码本)。其中一些绘图有很长的绘图标题(通常是调查问题)和/或x轴标签 library(ggplot2) qplot(1:10,rnorm(10)) + ggtitle("this is indeed a very long title but sometimes necessary. this is indeed a very long title but sometimes necessary. this is indeed a very

我正在以自动化的方式生成大量GGPlot(用于调查代码本)。其中一些绘图有很长的绘图标题(通常是调查问题)和/或x轴标签

library(ggplot2)
qplot(1:10,rnorm(10)) + 
ggtitle("this is indeed a very long title but sometimes necessary. this is indeed a very long title but sometimes necessary. this is indeed a very long title but sometimes necessary", subtitle = "the very long title has an even longer subtitle to boot, really much longer than the title. the very long title has an even longer subtitle to boot, really much longer than the title.") + 
scale_x_continuous(breaks = 1:10, labels = paste("Option", 1:10))
有没有办法防止这些文本被剪切(通过包装、收缩或旋转)?可以自动化的方法并适用于可变宽度字体?类似的问题也存在,但是解决了ggplot2的旧版本,手动解决方案,或者(看起来更复杂,但是
label\u wrap\u gen
似乎处理得很好,所以我认为可能也存在一个简单的标题解决方案)

在进行绘图之前,我控制并了解绘图宽度和高度(通过knitr区块设置)

我知道我可以使用
\n
strwrap
来包装文本,但在那里我必须手动选择切点,这样做对于可变宽度字体通常会留下空白


只需删除
主题(基本大小=30)
。就这样。对于X轴,我将使用stringr的
str_wrap
scale_X_continuous(breaks=1:10,labels=str_wrap(粘贴(“选项”),1:10,width=3))
@Jimbou基本尺寸只是为了说明文本较少的问题。显然,这种情况也发生在更小的大小和更多的文本中<如果我不知道标签的数量,code>str_wrap对动态编程没有用处。然后修改可复制的示例,使其更精确。@Jimbou我将自动部分加粗,并复制了文本。我认为您可以在键入时直接使用
\n
来完成。