ggvis layer_model_predictions多项式拟合

时间:2017-07-12 20:48:58

标签: r shiny ggvis

mtcars %>%
  ggvis(x = ~mpg, y = ~hp) %>%
  layer_points() %>%
  layer_model_predictions(model = "lm") 

通过数据给出线性最佳拟合线。我正在研究如何制作2,3,4等的最佳拟合曲线。基于the documentation for layer_model_predictions,它声明模型“必须是生成带有{的标准模型对象的函数的名称{3}}方法。“这导致predict。我知道这意味着我很可能需要layer_model_predictions(model = "poly"),但是如何在layer_model_predictions函数调用中指定拟合的顺序(度)?

编辑:

当eipi10的解决方案应用于反应性闪亮应用时,接受的答案会带来一些麻烦。发布为新问题predict.poly

1 个答案:

答案 0 :(得分:1)

您可以向formula提供layer_model_predictions。例如,下面给出了三阶多项式拟合。

mtcars %>%
  ggvis(x = ~mpg, y = ~hp) %>%
  layer_points() %>%
  layer_model_predictions(model="lm", formula=hp ~ poly(mpg,3)) 

这与使用geom_smooth的ggplot2中的工作方式略有不同,您始终在yx(例如formula = y ~ poly(x,3))中提供公式,无论如何用于yx美学的特定列名称。