如何使用 geom_text 仅绘制全局最大值?

How to plot only Global Maximum Value using geom_text?

df%>%
  group_by(approved_date)%>%
  summarise(rev=sum(gmv))%>%
  ggplot(aes(x = approved_date, y = rev)) + 
    geom_line() + 
    geom_smooth(method = 'auto', se = FALSE) + 
    labs(x = 'Date', y = 'Revenue', title = 'Revenue by Date') +
    scale_y_continuous(labels = function(x) format(x, scientific = FALSE)) +
    stat_peaks(colour = "red", span = NULL) + 
    stat_valleys(colour = "blue", span = NULL) + 
    geom_text(aes(label = round(rev, 0)),
              vjust = "inward", 
              hjust = "inward",
              show.legend = FALSE,
              check_overlap = TRUE)

我有这段代码,它在 运行 上标记了局部最大值和最小值的所有值。我只想要 Global Maximum 和 Global Minimum.How 的值来做到这一点?

由于缺少数据,问题中的代码不能运行,我展示了一个从包用户指南中稍微修改过的例子。在这种情况下,这个不同的例子应该足以得出解决方案。

library(ggpmisc)
ggplot(lynx, as.numeric = FALSE) + geom_line() + 
  stat_peaks(colour = "red") +
  stat_peaks(geom = "text", colour = "red", vjust = -0.5, 
             check_overlap = TRUE, span = NULL) +
  ylim(-100, 7300)

换句话说,geom "text" 应该作为参数传递给 stat_peaks() 以及 span = NULL 以获得单个标签。如果直接添加 geom_text(),则不会选择峰值,而是将存储在映射到 label 美学的变量中的所有值添加到图中。