将标准线添加到直方图

时间:2019-03-12 13:33:17

标签: r histogram

我遵循DataCamp中有关R的一些课程,有时,当我将数据从datacamp复制到R-studio时,我遇到了问题,但通常情况下,我会在这里找到答案,或者通常是在网上找到答案。但是,这次我无法理解什么是错误或如何解决。当我在R-studio中运行以下代码以将线添加到直方图中时,我得到的行太多,而不是我在Datacamp中获得的一行。这是代码:

library(qrmdata)

# Load DJ index
data("DJ")

DJX <- diff(log(DJ))["2008/2009"]
djx <- unclass(DJX)

# Calculate average and standard deviation of djx
mu <- mean(djx)
sigma <- sd(djx)

# Plot histogram of djx
hist(djx, nclass = 20, probability = TRUE)

# Add the normal density as a red line to histogram
lines(djx, dnorm(djx, mean = mu, sd = sigma), col = "red")

根据Datacamp,它应该如何出现

datacamp

这就是我在R-studio中运行代码时得到的

r

有人可以告诉我我犯了什么错误吗?

1 个答案:

答案 0 :(得分:0)

直方图显示您的数据已排序,而lines不会。因此,您必须首先对数据进行排序。

lines(sort(djx), dnorm(sort(djx), mean=mu, sd=sigma), col="red")

enter image description here