2012-01-28 4 views
7

Я пытаюсь сделать гистограмму в [R] и нормальной кривой, которая описывает гистограмму следующим образом:Как использовать функциональную кривую в [R] для графика нормальной кривой?

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

Но когда я пытаюсь построить нормальную кривую по функции кривой показывает мне следующее сообщение об ошибке :

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

Что я делаю неправильно?

+0

Try 'линии (плотность (ш))' ' –

ответ

10

Вам просто нужно отказаться от «W» аргумент dnorm в curve:

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

Чтобы использовать что-то другое, чем «нормаль» вы поставляете «означают» и «SD» аргументы (и не помню изменить пределы участка для обоих hist и 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

или кривой (dnorm (х), ...)' или 'кривой (dnorm (ш), ..., xname = "w") ' –

+0

Спасибо. Как передать 'mean' и' sd' в 'dnorm' в этом случае? –

+0

Путь вперед намечен комментатором BenBolker. –

1

Просто ...

curve(dnorm(w, mean=mean(w), sd=sd(w)), y = 5, to = 15, add=T, col="blue") 
Смежные вопросы