2016-12-26 63 views
0

是否可以使用由ggplot2的geom_step函數創建的審美來找出給定x的f(x)?ggplot2:爲geom_step找到f(x)

我已經繪製了一個表示時間序列的step函數,並且我希望插入一個x值並返回step函數表示的y值,唯一我能想到的其他方式是派生我正在尋找x值之前的最新事件。有沒有辦法使用ggplot對象來做到這一點?謝謝。

回答

2

答案「我可以從ggplot中提取...」嗎?通常是「重新計算ggplot之外的計算更容易」。在這種情況下,答案是approxfun(x,y,method="constant")(基於R的stats包)。

dd <- data.frame(x=1:5,y=1:5) 
library(ggplot2) 
ggplot(dd,aes(x,y))+geom_step() 

ee <- approxfun(dd$x,dd$y,method="constant") 

綜述ggplot:

ee(1.5) 
ee(3.9) 

curve(ee,from=1,to=5,type="s") 

使用的功能,例如可以