Метод Args для построения линии регрессии nls с помощью geom_smooth () - не работает - PullRequest
0 голосов
/ 29 января 2019

Я пытаюсь наложить кривую регрессии объекта nls на график рассеяния в ggplot2, но продолжаю сталкиваться с ошибкой после различных попыток форматирования аргументов.Я попробовал следующую рекомендацию из здесь , но она больше не работает, так как версия ggplot2 была 2.0 на момент написания этого поста и сейчас 3.1.0 (по крайней мере, версия, которую я использую),Помимо использования предыдущей версии пакета, я не понимаю, почему этот формат не работает, если что-то не изменилось в ggplot2, для которого я не могу найти документацию.Заранее спасибо!

ggplot(enzymes, aes(x=X,y=Y))+
  geom_point()+
  geom_smooth(method = 'nls', data = enzymes, se = FALSE,
              formula = Y~gamma_0*X/(gamma_1 + X),
              method.args = list(start = c(gamma_0 = 1/5.42, gamma_1 = 5.42/.49)))+
  labs(title = "Enzymes Nonlinear Regression Plot")

ggplot(enzymes, aes(x=X,y=Y))+
  geom_point()+
  geom_smooth(method = 'nls', se = FALSE,
              method.args = list(formula = Y~gamma_0*X/(gamma_1 + X), 
                                 start = list(gamma_0 = 1/5.42, gamma_1 = 5.42/.49)))+
  labs(title = "Enzymes Nonlinear Regression Plot")

Оба выдают следующее предупреждение

Warning message:
Computation failed in `stat_smooth()`:
parameters without starting value in 'data': Y, X 

Ясно, что у обоих есть начальные значения ... (если я что-то полностью не пропустил)

...