ggpubr::stat_cor
создает строку с именем ..p.label..
- мы можем преобразовать ее в число, оценить, является ли она <0,001, и использовать ее для переопределения значения в операторе <code>if_else:
ggplot(mtcars,aes(x=wt,y=mpg))+
geom_point() +
ggpubr::stat_cor(
aes(label = paste(..rr.label..,
if_else(readr::parse_number(..p.label..) < 0.001,
"p<0.001", ..p.label..), sep = "~`, `~")),
label.x = 0.20,label.y = 0.90,size=5)
То же самое с ggplot(mtcars,aes(x=wt,y=qsec))+
, что менее коррелирует: