根据数据向geom_freqpoly绘图添加垂直线
我想在a根据数据向geom_freqpoly绘图添加垂直线,r,ggplot2,R,Ggplot2,我想在ageom_freqpoly上添加一条垂直线,其中根据曲线的趋势确定直线的x轴位置。具体地说,我在寻找曲线变平的x轴位置——最后一个拐点 举例说明: library(ggplot2) ggplot(data=diamonds, aes(carat))+geom_freqpoly(binwidth = 0.1) 给出了这个图: 我想在x=~2.5处添加一条垂直线,以获得: 所以我的问题是如何找到决定x轴位置的最后一个拐点?有趣的问题。如果我想对了,你是在寻找最后一点,有一定的容忍度,比如
geom_freqpoly
上添加一条垂直线,其中根据曲线的趋势确定直线的x轴位置。具体地说,我在寻找曲线变平的x轴位置——最后一个拐点
举例说明:
library(ggplot2)
ggplot(data=diamonds, aes(carat))+geom_freqpoly(binwidth = 0.1)
给出了这个图:
我想在x=~2.5处添加一条垂直线,以获得:
所以我的问题是如何找到决定x轴位置的最后一个拐点?有趣的问题。如果我想对了,你是在寻找最后一点,有一定的容忍度,比如说26。这可能是一个有点黑客,但它会工作,你可以修改它为您的数据 ggplot设置
library(ggplot2)
b <- ggplot(data=diamonds, aes(carat)) + geom_freqpoly(binwidth = 0.1)
带有V线的新ggplot:公差为26,从上一个开始为第二个
ggplot(data=diamonds, aes(carat)) +
geom_freqpoly(binwidth = 0.1) +
geom_vline(xintercept = get_infl(b, 26, 2), color = "red")
拐点不是在2吗?你的解释也可能认为4也是一个转折点,因为它是最后一个最高的数字。
ggplot(data=diamonds, aes(carat)) +
geom_freqpoly(binwidth = 0.1) +
geom_vline(xintercept = get_infl(b, 26, 1), color = "red")
ggplot(data=diamonds, aes(carat)) +
geom_freqpoly(binwidth = 0.1) +
geom_vline(xintercept = get_infl(b, 26, 2), color = "red")