[英]Creating dynamic x-axis labels when using facets
我有一个 plot 它使用如下所示的方面:
library(tidyverse)
dat <- data.frame(grp = c("a", "a", "b", "b"),
ep = c("r1", "r2", "r1", "r2"),
val = c(3, 5, 2, 5),
suffix = c("_w", "_x", "_y", "_z"))
dat %>%
ggplot(aes(x = ep, y = val, fill = ep)) +
geom_col(position = "dodge") +
facet_wrap(~grp)
我想 append 每个 x 轴标签的后缀列,因此最终结果将如下所示:
我在下面尝试过这种方法,但是说找不到后缀变量:
dat %>%
ggplot(aes(x = ep, y = val, fill = ep)) +
geom_col(position = "dodge") +
scale_x_discrete(labels = function(x) paste0(x, suffix)) +
facet_wrap(~grp)
不要在ggplot中做,先创建后缀列。
library(tidyverse)
dat <- data.frame(grp = c("a", "a", "b", "b"),
ep = c("r1", "r2", "r1", "r2"),
val = c(3, 5, 2, 5),
suffix = c("_w", "_x", "_y", "_z"))
dat %>%
mutate(x_suffix = paste0(ep, suffix)) %>%
ggplot(aes(x = x_suffix, y = val, fill = ep)) +
geom_col(position = "dodge") +
facet_wrap(~grp, scales = "free_x")
由reprex package (v2.0.1) 于 2021 年 12 月 1 日创建
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.