我正在嘗試為一組資料繪制分位數回歸線。我想擴展分位數回歸線geom_quantile(),以顯示它們如何預測類似于使用stat_smooth()設定為 TRUE 的全范圍引數。但是,對于geom_quantile(). 例如,請參見下文:
data("mpg")
library(ggplot2)
library(dplyr)
m <-
ggplot(mpg, aes(displ,1/ hwy))
geom_point()
m geom_quantile()
scale_x_continuous(limits = c(1,9),
breaks = waiver(),
n.breaks = 8)
p <-
ggplot(mpg, aes(displ,1/ hwy))
geom_point()
p stat_smooth(method = lm, fullrange = TRUE, se = FALSE, color = "red")
scale_x_continuous(limits = c(1,9),
breaks = waiver(),
n.breaks = 8)
m1 <-
ggplot(mpg, aes(displ,1/ hwy))
geom_point()
m1 geom_quantile(fullrange = TRUE)
scale_x_continuous(limits = c(1,9),
breaks = waiver(),
n.breaks = 8)
第一部分m給出了資料集的分位數回歸線。對于p,我可以將預測的線性回歸線顯示為 9 的位移。m1盡管如此,我無法擴展回歸線。我有辦法告訴我ggplot做這種預測嗎?當然,更簡單是可取的,但我會考慮任何建議。提前致謝!
uj5u.com熱心網友回復:
在引擎蓋下,geom_quantile使用quantreg::rq,并且直接使用它來產生相同的效果非常簡單geom_abline:
mod <- quantreg::rq(I(1/hwy) ~ displ, tau = c(0.25, 0.5, 0.75), data = mpg)
r_df <- setNames(as.data.frame(t(coef(mod))), c("intercept", "gradient"))
m1 geom_abline(data = r_df, aes(slope = gradient, intercept = intercept))
scale_x_continuous(limits = c(1,9),
breaks = waiver(),
n.breaks = 8)

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/426662.html
