2

我正在考虑在一张图上绘制多个密度图。我的情况是:我有一个查询结果,它有三个不同的列

CustomerID  Group  AvgVisitsperday
1             grp1        10
2             grp1        20
3             grp2        30
4             grp3        40
5             grp2        15
6             grp2         5

我有大约 50,000 行数据。我想用三种不同的颜色绘制 3 个密度图,它们将代表 3 个不同的组及其在单个图上的平均访问量。我觉得密度图是代表分布的理想选择。关于此的任何想法或想法,请随意发表评论。我已经能够使用 R 绘制一个密度图,但无法按组进行绘制。请帮忙!

4

2 回答 2

1

density使用基本图形的输出相当容易。估算值包含 $x 和 $y 组件,因此绘制一个,然后添加其他组件lines效果很好。

plot(density( subset(dfrm, Group=='GrpA', AvgVisitsperday), na,rm=TRUE) )  
with( density( subset(dfrm, Group=='GrpB', AvgVisitsperday), na,rm=TRUE) ,
      lines(x,y)
with( density( subset(dfrm, Group=='GrpC', AvgVisitsperday), na,rm=TRUE) ,
      lines(x,y)

带格子:

require(lattice)
densityplot( ~ AvgVisitsperday, groups=Group, data=dfrm)
于 2013-08-15T21:48:43.070 回答
1

我会推荐这个ggplot2包:

ggplot(df, aes(x=AvgVisitsperday, color=Group)) + stat_density(fill=NA)
于 2013-08-15T21:01:53.513 回答