在 ggplot 中使用 plotmath 表达式的两行注释
Two-line annotations using plotmath expressions in ggplot
我想在 ggplot
注释的第二行中将单个字符设为斜体
这是情节
iris %>%
ggplot(aes(x = Sepal.Length,
y = Species,
fill = Species)) +
stat_summary(geom = "bar", fun = "mean") +
theme(legend.position = "none") -> p
现在我可以像这样对情节进行注释,并将单个字符设为斜体,而将其余字符设为单体。
p + annotate("text",
label = "italic(N)==74",
x = 3,
y = 2,
parse = T)
现在说我想要一个两行注释,其中粘贴了某些字符。我可以这样做不用 使用 plotmath
p + annotate("text",
label = paste("AUC = ",
round(60.1876,3),
"\nN = ",
74,
sep = ""),
x = 3,
y = 2,
size = 4)
如您所见,N
字符是单体的。有没有办法让它看起来像第二张图,但 N 是斜体,使用 plotmath 或其他技术?
使用atop
在文本之上绘制文本。参见 ?plotmath
。
p +
annotate(
"text",
label = paste0("atop(AUC == ", round(60.1876, 3), ",italic(N) == 74)"),
x = 3,
y = 2,
size = 4,
parse = TRUE
)
我想在 ggplot
这是情节
iris %>%
ggplot(aes(x = Sepal.Length,
y = Species,
fill = Species)) +
stat_summary(geom = "bar", fun = "mean") +
theme(legend.position = "none") -> p
现在我可以像这样对情节进行注释,并将单个字符设为斜体,而将其余字符设为单体。
p + annotate("text",
label = "italic(N)==74",
x = 3,
y = 2,
parse = T)
现在说我想要一个两行注释,其中粘贴了某些字符。我可以这样做不用 使用 plotmath
p + annotate("text",
label = paste("AUC = ",
round(60.1876,3),
"\nN = ",
74,
sep = ""),
x = 3,
y = 2,
size = 4)
如您所见,N
字符是单体的。有没有办法让它看起来像第二张图,但 N 是斜体,使用 plotmath 或其他技术?
使用atop
在文本之上绘制文本。参见 ?plotmath
。
p +
annotate(
"text",
label = paste0("atop(AUC == ", round(60.1876, 3), ",italic(N) == 74)"),
x = 3,
y = 2,
size = 4,
parse = TRUE
)