平滑线而无线浸入ggplot

时间:2018-06-26 08:34:34

标签: r ggplot2 points smoothing

我有一个关于通过我拥有的一些数据点绘制一条线的问题。

数据显示我的expt效率稳定在0.8-0.9之间。但是,当我绘制geom_smooth()时,它看起来好像再次下降。当我使用geom_line()进行绘制时,从1点到下一个点的过渡并不像我希望的那样平滑。

我使用的值是:

 x <-  c(0.20, 0.44, 0.72, 0.86, 0.88, 0.89)
 time <-  c(0, 5, 15, 40, 80, 120)
 dfs2 <- data.frame(x, time)

我从这些数据中提取出一个数据帧,称为dfs2。我已经使用了geom_line()或geom_smooth()(都在下面的代码中显示,但只使用了一个)

plot <- ggplot(dfs2, aes(x = `time`, y = `x`)) + 
  geom_point() +
  geom_line() +
  geom_smooth(span = 2, se = F) +
  xlim(0, 120) + ylim(0, 1)

我如何使这些数据显示为水平线,就像使用geom_line()进行绘制一样,但是从一个点到另一个点都没有尖角

谢谢!

1 个答案:

答案 0 :(得分:-1)

您是否选中了this question?也许spline()是您要寻找的。

spline_int = as.data.frame(spline(dfs2$time, dfs2$x))

ggplot(dfs2, aes(x = `time`, y = `x`)) + 
  geom_point() + 
  geom_line(data=spline_int, aes(x = x, y = y))