Библиотека ggalt
может помочь вам выполнить трюк с помощью функции geom_encircle()
следующим образом:
library(ggplot2)
library("ggalt")
x <- c(1,1.2,1.1,2,2.1,2.1,2.9,3,3.2)
y <- rep(seq(0,8,4),3)
z <- c(2,3,5,8,7,9,13,15,12)
DF <- data.frame(x,y,z)
ggplot(DF, aes(x,y,z)) +
geom_point() +
geom_text(label = z,
hjust = 0,
nudge_x = 0.05,
nudge_y = 0.05)+
geom_encircle(data=subset(DF, z<5),
color="red",
size=1, expand=0.04)+
geom_encircle(data=subset(DF, z<10),
color="blue",
size=1,
expand=0.06)+
geom_encircle(data=subset(DF, z<15),
color="black",
size=1,
expand=0.08)+
xlim(0,4)+ylim(-1,10)
Для получения дополнительной информацииcheck https://rdrr.io/cran/ggalt/man/geom_encircle.html Ура!