/ / Jak cieniować wykres za pomocą krzywej () w R - r, wykres, wykres, obszar

Jak cieniować wykres za pomocą krzywej () w R - r, wykres, wykres, obszar

Planuję standardowy rozkład normalny.

curve(dnorm(x), from=-4, to=4,
main = "The Standard Normal Distibution",
ylab = "Probability Density",
xlab = "X")

Ze względów pedagogicznych chcę zaciągnąć obszar poniżej określonego kwantyla mojego wyboru. Jak mogę to zrobić?

Odpowiedzi:

4 dla odpowiedzi № 1

Jeśli chcesz użyć curve i podstawową fabułę, wtedy możesz sam napisać trochę funkcji polygon:

colorArea <- function(from, to, density, ..., col="blue", dens=NULL){
y_seq <- seq(from, to, length.out=500)
d <- c(0, density(y_seq, ...), 0)
polygon(c(from, y_seq, to), d, col=col, density=dens)
}

Oto mały przykład:

curve(dnorm(x), from=-4, to=4,
main = "The Standard Normal Distibution",
ylab = "Probability Density",
xlab = "X")

colorArea(from=-4, to=qnorm(0.025), dnorm)
colorArea(from=qnorm(0.975), to=4, dnorm, mean=0, sd=1, col=2, dens=20)

wprowadź opis obrazu tutaj