我是新與R和I具有適合3個模型我的數據如下:如何繪製R中的一個圖中的3個模型?
模型1:Y = A(X)+ B
lm1 = lm(data$CBI ~ data$dNDVI)
模型2:Y = A(X )2 + b(X)+ C
lm2 <- lm(CBI ~ dNDVI + I(dNDVI^2), data=data)
模型3:Y = X(A | X | + b)-1
lm3 = nls(CBI ~ dNDVI*(a*abs(dNDVI) + b) - 1, start = c(a = 1.5, b = 2.7), data = data)
現在我想繪製所有這三個在R模型,但我找不到辦法,你能幫我嗎?我曾與前兩種模式嘗試作爲遵循和它的工作,但我不知道如何添加模型3就可以了:
ggplot(data = data, aes(x = dNDVI, y = CBI)) +
geom_point() +
geom_smooth(method = lm, formula = y ~ x, size = 1, se = FALSE) +
geom_smooth(method = lm, formula = y ~ x + I(x^2), size = 1, se = FALSE) +
theme_bw()
我也想補充一個傳奇,其表現出3種不同顏色或類型3個模型的線條/曲線也是如此。你能指導我如何使它在圖中?
GGPLOT2沒有方法直接從'geom_smooth'繪製'nls'模型(向下滾動到「方法」 HTTP ://ggplot2.tidyverse.org/reference/geom_smooth.html)。分別擬合模型,使用預測函數創建代表擬合線的虛擬數據集,然後繪製這些數據。 –
非常感謝你,所以我需要先分別擬合模型,然後使用帶有預測值的geom_lines吧?乾杯 – tnbang
至少'lm3',只需添加該行到你的'ggplot'電話,其他的應該適合你所繪製的他們 - 這是工作的罰款現在好嗎? –