J'essaie d'afficher un modèle linéaire pour les faibles valeurs de x et un modèle non linéaire pour les valeurs de x plus élevées. Pour ce faire, je vais utiliser la DNase comme exemple :
library(ggplot2)
#Assinging DNase as a new dataframe:
data_1 <- DNase
#Creating a column that can distinguish low and high range values:
data_1$range <- ifelse(data_1$conc <5, "low", "high")
#Attempting to plot separate lines for low and high range values, and also facet_wrap by run:
ggplot(data_1, aes(x = conc, y = density, colour = range)) +
geom_point(size = 0.5) + stat_smooth(method = "nls",
method.args = list(formula = y ~ a*exp(b*x),
start = list(a = 0.8, b = 0.1)),
data = data_1,
se = FALSE) +
stat_smooth(method = 'lm', formula = 'y~0+x') +
facet_wrap(~Run)
Cependant, comme vous pouvez le voir, il semble tracer à la fois le modèle linéaire et le modèle non linéaire pour les deux, et je n'arrive pas à trouver où mettre l'information qui lui dirait de n'en tracer qu'un pour chacun. De plus, si possible, puis-je étendre ces modèles à toute la gamme de valeurs sur l'axe des x ?