我试图使用R包ggplot2绘制并比较两组十进制数,介于0和1之间。当我在qplot中使用geom =“density”绘制时,我注意到密度曲线超过了1.0。我希望数据的密度图不超过集合的值范围,即所有区域都保持在0和1之间。
是否可以在不超过1或0的情况下绘制值0和1之间的密度?如果是这样,我将如何做到这一点?我需要两个图的面积在0和1之间,即数据的范围。 这是我用来生成图的代码。
右:qplot(precision,data = compare, fill=factor(dataset),binwidth = .05,geom="density", alpha=I(0.5))+ xlim(-1,2)
左:qplot(precision,data = compare, fill=factor(dataset),binwidth = .05,geom="density", alpha=I(0.5))
答案 0 :(得分:3)
您可以考虑使用不同的工具来估算密度(内置密度函数不考虑边界),然后使用ggplot2绘制估计的密度。 logspline软件包具有估算密度的工具(使用与密度不同的算法),您可以告诉函数密度在0和1之间的范围,并且在估算密度时会考虑这一点。然后使用ggplot2(或其他代码)来比较估计的密度。