在 geom_bar 上解析离散轴值中的上标
Parse superscript in discrete axis values on geom_bar
我正在尝试向某些 x 轴值添加上标,以便连接到页面底部的脚注。简单的解决方法只是一个星号而不是 ^a
但这对我的目的不起作用。
我进行了大量搜索,虽然有很多关于轴标签上标的 post,但我找不到任何关于轴值上标的信息。他们中的大多数人似乎都加入了 gg + labs(x = expression("blah^a"))
。
我确实找到 post 关于解析 geom_text()
中的上标,但它似乎对 geom_bar()
.
不起作用
这里是一些测试数据:
library(ggplot2)
dat <- data.frame(x = c("alpha", "bravo^a"),
y = c(10, 8))
ggplot(data = dat) +
geom_bar(aes(x = x,
y = y),
stat = "identity")
你只需要parse
里面的文字scale_x_discrete
编辑:添加 geom_text
示例
library(ggplot2)
dat <- data.frame(x = c("alpha", "bravo^a"),
y = c(10, 8))
### need to convert x to factor if R >= 4.0
dat$x <- factor(dat$x)
ggplot(data = dat) +
geom_bar(aes(x = x,
y = y),
stat = "identity") +
scale_x_discrete(labels = parse(text = levels(dat$x))) +
geom_text(aes(x = x, y = y,
label = x),
parse = TRUE,
nudge_y = 1,
size = 5) +
theme_minimal(base_size = 14)
由 reprex package (v0.2.0.9000) 创建于 2018-08-27。
我正在尝试向某些 x 轴值添加上标,以便连接到页面底部的脚注。简单的解决方法只是一个星号而不是 ^a
但这对我的目的不起作用。
我进行了大量搜索,虽然有很多关于轴标签上标的 post,但我找不到任何关于轴值上标的信息。他们中的大多数人似乎都加入了 gg + labs(x = expression("blah^a"))
。
我确实找到 geom_text()
中的上标,但它似乎对 geom_bar()
.
这里是一些测试数据:
library(ggplot2)
dat <- data.frame(x = c("alpha", "bravo^a"),
y = c(10, 8))
ggplot(data = dat) +
geom_bar(aes(x = x,
y = y),
stat = "identity")
你只需要parse
里面的文字scale_x_discrete
编辑:添加 geom_text
示例
library(ggplot2)
dat <- data.frame(x = c("alpha", "bravo^a"),
y = c(10, 8))
### need to convert x to factor if R >= 4.0
dat$x <- factor(dat$x)
ggplot(data = dat) +
geom_bar(aes(x = x,
y = y),
stat = "identity") +
scale_x_discrete(labels = parse(text = levels(dat$x))) +
geom_text(aes(x = x, y = y,
label = x),
parse = TRUE,
nudge_y = 1,
size = 5) +
theme_minimal(base_size = 14)
由 reprex package (v0.2.0.9000) 创建于 2018-08-27。