2012-01-28 23 views
7

estoy tratando de hacer un histograma de la [R], y la curva normal que describe el histograma de la siguiente manera:¿Cómo usar la curva de función en [R] para graficar una curva normal?

w<-rnorm(1000) 
hist(w,col="red",freq=F,xlim=c(-5,5)) 
curve(dnorm(w),-5,5,add=T,col="blue") 

Pero cuando intento trazar la curva normal de la función curva me muestra el siguiente error :

Error en curve(dnorm(w), -5, 5, add = T, col = "blue") : 
    'expr' must be a function, or a call or an expression containing 'x' 

¿Qué estoy haciendo mal?

+0

try 'líneas (densidad (W))' –

Respuesta

10

sólo tiene que caer el argumento de la "w" para dnorm en curve:

w<-rnorm(1000) 
hist(w,col="red",freq=F,xlim=c(-5,5)) 
curve(dnorm,-5,5,add=T,col="blue") 

usar algo que no sea la "unidad normal" que proporcione "decir" y argumentos "SD" (y me acuerdo para cambiar los límites de la trama para ambos hist y curve:

w<-rnorm(1000, mean=10, sd=2) 
hist(w, col="red", freq=F, xlim=10+c(-5,5)) 
curve(dnorm(x, mean=10,sd=2), 5, 15, add=T, col="blue") 

enter image description here

+4

o 'curva (Dnorm (x), ...)' o 'curva (Dnorm (w), ..., xname = "w") ' –

+0

Gracias. ¿Cómo pasar 'mean' y' sd' a 'dnorm' en este caso? –

+0

El camino a seguir se insinúa en el comentario de BenBolker. –

1

simple ...

curve(dnorm(w, mean=mean(w), sd=sd(w)), y = 5, to = 15, add=T, col="blue")