在这里,我使用当前的 CRAN ggpmisc (v 0.3.8) 显示了使用 ggpmisc 添加到绘图的组的 nls。这是小插图的变体/修改,其中“stat_fit_tidy()”使用了 michaelis-menten 拟合,可在此处找到。输出如下所示:
library(tidyverse)
library(tidymodels)
library(ggpmisc)
my_exp_formula <- y ~ a * exp(b*x-0)
# if x has large values (i.e. >700), subtract the minimum
# see https://stackoverflow.com/a/41108403/4927395
#example with nls, shows the data returned
o <- nls(1/rate ~ a * exp(b*conc-0), data = Puromycin, start = list(a = 1, b = 2))
o
tidy(o)
ggplot(Puromycin, aes(conc, 1/rate, colour = state)) +
geom_point() +
geom_smooth(method = "nls",
formula = my_exp_formula,
se = FALSE) +
stat_fit_tidy(method = "nls",
method.args = list(formula = my_exp_formula),
label.x = "right",
label.y = "top",
aes(label = paste("a~`=`~", signif(stat(a_estimate), digits = 3),
"%+-%", signif(stat(a_se), digits = 2),
"~~~~b~`=`~", signif(stat(b_estimate), digits = 3),
"%+-%", signif(stat(b_se), digits = 2),
sep = "")),
parse = TRUE)
ggsave("exp plot.png")