r语言中,画出了频率分布直方图,怎么在图上添加概率分布曲线

Python020

r语言中,画出了频率分布直方图,怎么在图上添加概率分布曲线,第1张

可以用内置的graphic包来画,就是plot()和curve()

可以用ggplot2来画,后者更灵活.

graphic

# 先生成一组随机数

x <- rnorm(2000)

# 画频率直方图, 分30个bin

hist(x, freq = F, breaks = 30)

# 再画概率分布曲线

lines(density(x, bw=.5), col="red", lwd=2)

2.ggplot2

# 准备工作, 把x设成一个数据集

library(ggplot2)

data <- data.frame(x = x)

# 生成底层和直方图,概率线的图层

p <- ggplot(data, aes(x = x, y = ..density..))

p <- p + geom_histogram(fill = "navy")

p <- p + geom_density(colour = "green")

1、先看极值(数据中最大值与最小值之差,比如85-36=49)2、适当调整(有时不需要调整):将区间调整在35.5~85.5,这样极差就是50,便于分组3、分组:一般情况下分组在6~12组,比如本例可以分10组,那么组距就是50/10=5 35.5-40. 40.5-45.5 -----------------80.5-85.5