ggplot2中facet_grid的label_parsed与空格和表达式混合

Bangyou

我想绘制一个图以自定义带有表达式和普通字符串(包括空格)的带状文本,但是当普通文本包含空格时出现错误。这是一个重现我的问题的示例:

library(ggplot2)
labels <- c("'FT'[1]*' - Ctrl'", 
        "'FT'[tot]*' - FT'[1]*''",
        "'FT'[tot]*' - Ctrl'")
lbl_pd <- data.frame(impact = c('Direct impact', 'Direct impact', 
            'Indirect impact', 'Indirect impact'),
        type = c(labels[1], labels[2], labels[1], labels[2]),
        Latitude = -22.5, Longitude = 115,
        label = c('a', 'b', 'c', 'd'))
p <- ggplot(lbl_pd)
p <- p + geom_text(aes(Longitude, Latitude, label = label), size = 2)

p <- p + facet_grid(type~impact, labeller = label_parsed)
p

错误是

Error in parse(text = x) : <text>:1:8: unexpected symbol
1: Direct impact
       ^

如果“影响”列没有任何空格,则没有错误。

我该如何解决这个问题?感谢您的任何建议。

hrbrmstr

您可以替换自己的标签功能:

library(plyr)

my_label_parsed <- function (variable, value) {
  if (variable == "impact") {
    return(as.character(value))
  } else {
    llply(as.character(value), function(x) parse(text = x))    
  }
}

library(ggplot2)

labels <- c("'FT'[1]*' - Ctrl'", 
        "'FT'[tot]*' - FT'[1]*''",
        "'FT'[tot]*' - Ctrl'")
lbl_pd <- data.frame(impact = c('Direct impact', 'Direct impact', 
            'Indirect impact', 'Indirect impact'),
        type = c(labels[1], labels[2], labels[1], labels[2]),
        Latitude = -22.5, Longitude = 115,
        label = c('a', 'b', 'c', 'd'))
p <- ggplot(lbl_pd)
p <- p + geom_text(aes(Longitude, Latitude, label = label), size = 2)

p <- p + facet_grid(type~impact, labeller = my_label_parsed)
p

在此处输入图片说明

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

R:ggplot2:facet_grid:如何在少数(不是全部)标签中包含数学表达式?

来自分类Dev

ggplot2中的facet_wrap()和facet_grid()有什么区别?

来自分类Dev

在ggplot2和facet_wrap中具有表达式的as_labeller

来自分类Dev

结合 facet_grid (ggplot2) 和 denscomp (fitdistrplus)

来自分类Dev

如何在ggplot2 :: label_parsed的plotmath中包含美元符号

来自分类Dev

ggplot2:如何获取facet_grid()的labeller = label_both和facet_wrap()的ncol选项的合并功能?

来自分类Dev

ggplot2中facet_grid的图层无效

来自分类Dev

改变ggplot2中的facet_grid输出

来自分类Dev

ggplot2中的facet_grid错误

来自分类Dev

ggplot2 facet_wrap与数学表达式

来自分类Dev

带有使用 label_parsed 的表达式的 R 面标签

来自分类Dev

如何在ggplot2 :: facet_grid中格式化网格标题和条目

来自分类Dev

如何在ggplot2中使用facet_grid制作甜甜圈图?

来自分类Dev

geom_abline似乎不尊重facet_grid中的组[ggplot2]

来自分类Dev

在ggplot2中使用facet_grid的自定义散点图矩阵

来自分类Dev

使用ggplot2中的facet_grid更改中断次数

来自分类Dev

变更单保证金显示在facet_grid ggplot2中?

来自分类Dev

ggplot2 facet_grid:如何修复geom_col中列之间的不同间距

来自分类Dev

ggplot2:facet_grid中x轴标签的条件格式

来自分类Dev

`ggplot2` 中的 `annotate` 与 `facet_grid` 结合时会报告错误

来自分类Dev

控制facet_grid、ggplot中的间距和标签

来自分类Dev

通过表达式生成时如何在ggplot2中对齐标题和字幕

来自分类Dev

ggplot2 stat_function,具有facet_grid中不同数据子集的计算参数

来自分类Dev

在ggplot2中使用`facet_grid`时,突出显示/在某些绘图周围画一个框

来自分类Dev

在ggplot2中使用facet_grid()时如何定义常见的y轴限制

来自分类Dev

r-如何在ggplot2中使用facet_grid获得长标签以适合?

来自分类Dev

在facet_grid上下文中设置ggplot2中scale_x_date的限制

来自分类Dev

重新排列facet_grid并将其添加到ggplot2的geom_bar中

来自分类Dev

将字符串传递给facet_grid:ggplot2

Related 相关文章

  1. 1

    R:ggplot2:facet_grid:如何在少数(不是全部)标签中包含数学表达式?

  2. 2

    ggplot2中的facet_wrap()和facet_grid()有什么区别?

  3. 3

    在ggplot2和facet_wrap中具有表达式的as_labeller

  4. 4

    结合 facet_grid (ggplot2) 和 denscomp (fitdistrplus)

  5. 5

    如何在ggplot2 :: label_parsed的plotmath中包含美元符号

  6. 6

    ggplot2:如何获取facet_grid()的labeller = label_both和facet_wrap()的ncol选项的合并功能?

  7. 7

    ggplot2中facet_grid的图层无效

  8. 8

    改变ggplot2中的facet_grid输出

  9. 9

    ggplot2中的facet_grid错误

  10. 10

    ggplot2 facet_wrap与数学表达式

  11. 11

    带有使用 label_parsed 的表达式的 R 面标签

  12. 12

    如何在ggplot2 :: facet_grid中格式化网格标题和条目

  13. 13

    如何在ggplot2中使用facet_grid制作甜甜圈图?

  14. 14

    geom_abline似乎不尊重facet_grid中的组[ggplot2]

  15. 15

    在ggplot2中使用facet_grid的自定义散点图矩阵

  16. 16

    使用ggplot2中的facet_grid更改中断次数

  17. 17

    变更单保证金显示在facet_grid ggplot2中?

  18. 18

    ggplot2 facet_grid:如何修复geom_col中列之间的不同间距

  19. 19

    ggplot2:facet_grid中x轴标签的条件格式

  20. 20

    `ggplot2` 中的 `annotate` 与 `facet_grid` 结合时会报告错误

  21. 21

    控制facet_grid、ggplot中的间距和标签

  22. 22

    通过表达式生成时如何在ggplot2中对齐标题和字幕

  23. 23

    ggplot2 stat_function,具有facet_grid中不同数据子集的计算参数

  24. 24

    在ggplot2中使用`facet_grid`时,突出显示/在某些绘图周围画一个框

  25. 25

    在ggplot2中使用facet_grid()时如何定义常见的y轴限制

  26. 26

    r-如何在ggplot2中使用facet_grid获得长标签以适合?

  27. 27

    在facet_grid上下文中设置ggplot2中scale_x_date的限制

  28. 28

    重新排列facet_grid并将其添加到ggplot2的geom_bar中

  29. 29

    将字符串传递给facet_grid:ggplot2

热门标签

归档