❝本节来分享一个小技巧,给分面图形添加小标签,主要使用ggpp包内的函数来实现,整个过程仅参考。希望对各位观众老爷能有所帮助。更多详细内容请参考ggpp官方文档 ❞
https://docs.r4photobiology.info/ggpp/articles/grammar-extensions.html
library(tidyver)
library(ggpp)
library(patchwork)
p1 <- ggplot(mtcars) + geom_point(aes(mpg, disp))
p2 <- ggplot(mtcars) + geom_boxplot(aes(gear, disp, group = gear))
p3 <- ggplot(mtcars) + geom_smooth(aes(disp, qsec))
p4 <- ggplot(mtcars) + geom_bar(aes(carb))
(p1+p2)/(p3+p4)+
plot_annotation(tag_levels = 'A')
❝上图主要绘制了四幅图,并通过patchwork包进行布局拼图进而添加标签,实现起来非常的容易。若图形都是拼图组成则添加标签则可使用此法,但图形若是分面而成那又该如何添加标签哪?在R中可通过ggpp包内的geom_text_npc函数即可实现此需求。 ❞
corner_letters.tb <- tibble(label = LETTERS[1:4],
x = "left",
y = "top",
cyl = c(4,5,6,8))
ggplot(mpg, aes(displ,hwy)) +
geom_point() +
facet_wrap(~cyl, scales = "free") +
ggpp::geom_text_npc(data = corner_letters.tb,
aes(npcx = x, npcy = y, label = label)) +
theme_classic() +
theme(strip.background = element_blank(),
strip.text.x = element_blank())