【问题标题】:How to change the facet labels in facet_wrap如何更改 facet_wrap 中的构面标签
【发布时间】:2015-01-17 18:12:01
【问题描述】:

我正在使用 ggplot 和 facet_wrap 来获取所需的图。我必须在每个 facet 的标签或变量或每个 facet 的名称中添加一些东西,就像我们如何在 ggplot 下直接修改 xlab 和 ylab 一样。

示例:

d <- ggplot(diamonds, aes(carat, price, fill = ..density..)) +
  xlim(0, 2) + stat_binhex(na.rm = TRUE) + theme(aspect.ratio = 1)

d + facet_wrap(~ color)

我现在要做的就是将每个方面的标签 i,e D,E,F,G,H,I,J 更改为其他内容。

如何修改?

加法

对不起,我试图打破它,但它需要时间,所以我已经将它添加到 github 中。 您可以上传文件并检查结果。 问题在于选项 4 facet_wrap...您可以选择单选按钮选项 4。

我已经评论了我之前使用的 facet_wrap 数据完整性很好,但是如果我更改 facet wrap,图表的行为会有所不同,数据也会有所不同。

要上传的数据可以在“要上传的数据”文件夹中找到

代码可以在这里找到:我会在一分钟内添加这个

【问题讨论】:

标签: r ggplot2 shiny facet-wrap


【解决方案1】:

据我所知,facet_grid 在这种情况下可能是更好的解决方案。 facet_grid 不仅可以帮助您按一个变量对图进行分组,还可以按两个甚至更多,有一个名为 labeller 的参数旨在自定义标签。

myfunction <- function(var, string) {
  print(var)
  print(string)
  result <- paste(as.character(string),'_new', sep="")
  return(result)
}

ggplot(diamonds, aes(carat, price, fill = ..density..)) + xlim(0, 2) + 
  stat_binhex(na.rm = TRUE) + theme(aspect.ratio = 1) + facet_grid(~color, labeller=myfunction, as.table=TRUE)

# OUTPUT
[1] "color"
[1] D E F G H I J
Levels: D < E < F < G < H < I < J

但是,如您所见,情节是在一行中,即使您基于here 打开as.table 标志,我认为它也不容易分成多行。

如果您添加一个专门用于标签的新列,您认为是否可行?那你就可以保持facet_wrap的厉害了...

diamonds$label <- paste(as.character(diamonds$color), "_new", sep="")
ggplot(diamonds, aes(carat, price, fill = ..density..)) + xlim(0, 2) + 
  stat_binhex(na.rm = TRUE) + theme(aspect.ratio = 1) + facet_wrap(~label)

【讨论】:

  • 这很好用。但我不知道为什么它在我的数据集中表现得很奇怪。如果我遵循您的建议,那么价值观就会重复,我的意思是在所有方面都有相同的价值观。我已将我的代码添加到问题中,请检查。
  • 我在将反应组件值传递给新标签名称时遇到问题。我现在修好了。感谢您的精彩回答。
【解决方案2】:

虽然这是一个非常古老的问题,但我想回答它,因为我学会了一个简单的方法!

这个解决方案是使用 facet_wrap() 并且不以任何方式更改您的数据。

text.on.each.panel <-"_new"
d <- ggplot(diamonds, aes(carat, price)) +
     xlim(0, 2) 
d + facet_wrap(~ color, labeller = label_bquote(.(color)-.(text.on.each.panel)))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-29
    • 2016-03-18
    • 1970-01-01
    • 1970-01-01
    • 2021-09-29
    • 2018-09-04
    相关资源
    最近更新 更多