我找不到任何暗示HTML或markdown支持"top"概念(也就是上标和下标的垂直对齐)的引用;有些答案甚至说"不可能",尽管我不能肯定地说是这样的.
这是可能的,使用基本的geom_label
和绘图数学表达式.
既然你说你有理由使用ggtext
,有没有可能用这个功能来分隔标签呢?
df <- tibble(
label = c(
'SO<sub>4</sub><sup>2-</sup>',
"'SO'[4]^'2-'"
),
x = c(.5, .5),
y = c(.4, .6),
parse = c(FALSE, TRUE)
)
ggplot(df) +
aes( x, y, label = label ) +
geom_richtext(data = ~ filter(., !parse)) +
geom_label(data = ~ filter(., parse), parse=TRUE) +
xlim(0, 1) + ylim(0, 1)
如果需要,您可以在SO
后面添加一些空格,以使其不那么拥挤;例如,"'SO '[4]^'2-'"
会导致