我知道这几乎是一个基本问题,但我在从包含这些数字(dat)的单个向量绘制直方图时遇到一些麻烦:
30.90 31.00 32.75 32.65 32.50 31.60 31.80 30.70 31.20 28.10 29.50 28.60 31.70 33.10
qplot是直截了当的:
qplot(PorData, binwidth=1.0, geo="histogram", xlab="Data", ylab="Frequency")
这给了我一个默认的直方图:
我希望做一些更美观的直方图,它还包含一个密度曲线,显示数据的偏斜度,并用黑色轮廓更改bin颜色,有点像这样:
使用qplot函数还是ggplot会更好吗? 提前谢谢!
答案 0 :(得分:3)
这是一种在ggplot2
中创建直方图和密度曲线的方法。
数据:
dat <- scan(textConnection("30.90 31.00 32.75 32.65 32.50 31.60 31.80 30.70 31.20 28.10 29.50 28.60 31.70 33.10"))
情节:
library(ggplot2)
qplot(dat, binwidth = 1.0, geom = "histogram", xlab = "Data", ylab = "Frequency",
y = ..density.., fill = I("white"), colour = I("black")) +
stat_density(geom = "line")
此处,y = ..density..
用于使用y轴上的相对频率。