在ggplot2中,我可以自动将标题分成多行,而不是使用转义\ n吗?

休伯茨

我编写了一个函数来为包含数百个问题的大型数据集绘制图形。所有图形都来自同一数据集,并将标题作为字符串从我读过的csv的“ graphtitle”列中提取。其中一些标题相当长,应分成两行。也许是因为它们来自csv,所以标题不能\n转义,即使它们确实起作用,似乎也应该有一种比\n在CSV适当位置添加每个变量名称更简单的方法

有没有办法让我的函数自动分割标题行?我知道我可以更改标题的大小,但这会使它变得难以辨认

MC.Graph <- function(variable){
    p <- ggplot(data = newBEPS, aes_string(x=variable)) + geom_bar(aes(y = (..count..)/sum(..count..)), width = .5)+ scale_y_continuous(labels = percent)
    p <- p + ggtitle(graphwords$graphtitle[graphwords$gw.varname == variable]) + 
    theme(plot.title = element_text(size =20, lineheight = .5, face = "bold"))
}
杰森·艾兹卡恩斯

以下是分解长字符串的两种方法:

  1. gsub('(.{1,10})(\\s|$)', '\\1\n', s)会将字符串s分割成长度以10分隔的行\n
  2. strwrap函数与widthpaste函数和collapse = \n参数的参数一起使用。

通过示例更容易理解...

long_title <- "This is a title that is perhaps too long to display nicely"

gsub('(.{1,10})(\\s|$)', '\\1\n', long_title)
# [1] "This is a\ntitle that\nis perhaps\ntoo long\nto display\nnicely\n"

paste(strwrap(long_title, width = 10), collapse = "\n")
# [1] "This is a\ntitle\nthat is\nperhaps\ntoo long\nto\ndisplay\nnicely"

注意:我相信strwrapstringi和/或stringr包(请参阅stringi::stri_wrapstringr::str_wrap)中可以更优雅地处理(并有效地进行猜测)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我可以从枚举中获取前n个元素,然后仍然使用其余的枚举吗?

来自分类Dev

我可以使用ffmpeg将JPEG输出到内存流而不是文件中吗?

来自分类Dev

我可以使用LINQ在列表中创建n个相同的条目吗?

来自分类Dev

我可以在临时列中显示“ Y”或“ N”结果吗?

来自分类Dev

我可以在ggplot2的直方图中修复重叠的虚线吗?

来自分类Dev

您可以限制N | Solid使用的进程数吗?

来自分类Dev

我可以获取firebase“查询”的第n个项目吗?

来自分类Dev

Java N New Date API在Android N中可用吗?

来自分类Dev

我可以在JavaScript中调用t()而不是I18n.t()吗?

来自分类Dev

python bisect是O(n ^ 2)吗?

来自分类Dev

我的跳过列表真的是在N中搜索而不是log(N)吗?

来自分类Dev

我可以在Cloud Dataproc中使用n2或n2d机器类型吗?

来自分类Dev

R:我可以使用scale_color_gradient更改ggplot2中geom_hline的颜色吗?

来自分类Dev

是Theta(n)的算法也是O(n ^ 2),这正确吗?

来自分类Dev

我可以在ggplot2中使用多个填充模式吗?

来自分类Dev

我可以使用管道吗?在R中,不是%>%

来自分类Dev

有什么方法可以在Telnet中仅发送“ \ n”吗?

来自分类Dev

我可以根据'\ n'使awk削减其输入吗?

来自分类Dev

我可以从SQLite中的设置获取N记录吗

来自分类Dev

'IFS = $'\ n'中的'\ n'是变量吗?

来自分类Dev

这个函数是O(n ^ 2log_2(n))吗?

来自分类Dev

删除列表中每N倍的N个项目吗?

来自分类Dev

我可以更改Handlebars.java中的默认转义吗?

来自分类Dev

我可以使用flex将分隔线放在多行上吗?

来自分类Dev

是log(n!)= O((log(n))^ 2)吗?

来自分类Dev

RabbitMQ:我可以获取最新的n条消息吗?

来自分类Dev

R-Facet_Wrap 每 n 列可能吗?ggplot2

来自分类Dev

我可以对参数 N 使用带有范围而不是标量的 polyfit 吗?

来自分类Dev

是 2^(log n) = O(log(n)) 吗?

Related 相关文章

  1. 1

    我可以从枚举中获取前n个元素,然后仍然使用其余的枚举吗?

  2. 2

    我可以使用ffmpeg将JPEG输出到内存流而不是文件中吗?

  3. 3

    我可以使用LINQ在列表中创建n个相同的条目吗?

  4. 4

    我可以在临时列中显示“ Y”或“ N”结果吗?

  5. 5

    我可以在ggplot2的直方图中修复重叠的虚线吗?

  6. 6

    您可以限制N | Solid使用的进程数吗?

  7. 7

    我可以获取firebase“查询”的第n个项目吗?

  8. 8

    Java N New Date API在Android N中可用吗?

  9. 9

    我可以在JavaScript中调用t()而不是I18n.t()吗?

  10. 10

    python bisect是O(n ^ 2)吗?

  11. 11

    我的跳过列表真的是在N中搜索而不是log(N)吗?

  12. 12

    我可以在Cloud Dataproc中使用n2或n2d机器类型吗?

  13. 13

    R:我可以使用scale_color_gradient更改ggplot2中geom_hline的颜色吗?

  14. 14

    是Theta(n)的算法也是O(n ^ 2),这正确吗?

  15. 15

    我可以在ggplot2中使用多个填充模式吗?

  16. 16

    我可以使用管道吗?在R中,不是%>%

  17. 17

    有什么方法可以在Telnet中仅发送“ \ n”吗?

  18. 18

    我可以根据'\ n'使awk削减其输入吗?

  19. 19

    我可以从SQLite中的设置获取N记录吗

  20. 20

    'IFS = $'\ n'中的'\ n'是变量吗?

  21. 21

    这个函数是O(n ^ 2log_2(n))吗?

  22. 22

    删除列表中每N倍的N个项目吗?

  23. 23

    我可以更改Handlebars.java中的默认转义吗?

  24. 24

    我可以使用flex将分隔线放在多行上吗?

  25. 25

    是log(n!)= O((log(n))^ 2)吗?

  26. 26

    RabbitMQ:我可以获取最新的n条消息吗?

  27. 27

    R-Facet_Wrap 每 n 列可能吗?ggplot2

  28. 28

    我可以对参数 N 使用带有范围而不是标量的 polyfit 吗?

  29. 29

    是 2^(log n) = O(log(n)) 吗?

热门标签

归档