Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何使用geom_文本仅绘制全局最大值?_R_Ggplot2_Geom Text_Ggpmisc - Fatal编程技术网

R 如何使用geom_文本仅绘制全局最大值?

R 如何使用geom_文本仅绘制全局最大值?,r,ggplot2,geom-text,ggpmisc,R,Ggplot2,Geom Text,Ggpmisc,我有一个代码,它在运行时标记了所有局部极大值和极小值。我只想要全局最大值和全局最小值。如何做到这一点?由于缺少数据,问题中的代码无法运行,我展示了一个从软件包用户指南中稍微修改的示例。在这种情况下,这个不同的例子应该足以解决这个问题 库(ggpmisc) ggplot(lynx,as.numeric=FALSE)+geom_line() 统计峰值(颜色=“红色”)+ 统计峰值(geom=“text”、color=“red”、vjust=-0.5、, 检查(重叠=真,跨度=空)+ ylim(-10

我有一个代码,它在运行时标记了所有局部极大值和极小值。我只想要全局最大值和全局最小值。如何做到这一点?

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

库(ggpmisc)
ggplot(lynx,as.numeric=FALSE)+geom_line()
统计峰值(颜色=“红色”)+
统计峰值(geom=“text”、color=“red”、vjust=-0.5、,
检查(重叠=真,跨度=空)+
ylim(-1007300)


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

请显示一个小的可复制示例,我在上面使用了一个不同的示例,以便我可以验证我的答案中的代码是否确实有效。一般来说,最好在问题中包含演示问题但无法运行的最简单示例,这通常意味着创建一个自己的小数据集,或者使用R中包含的数据或代码中的包。
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)