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)