我如何处理已经表格数据的条形图?

时间:2011-11-02 17:23:00

标签: r

我每天都有很多观察输入数据。 我可以使用barplot来制作我想要的table()一天。

如果我尝试加载超过1天并致电table()我的内存不足。

我正在尝试每天使用table()并将表连接成总数,然后我可以barplot。但我无法弄清楚如何将每天已经table d数据和条形图作为堆积列。

循环和整合后,我最终得到这样的结果:2天的观察。 Freq列是之前table()次来电的默认值

当我的数据像这样结束时,做叠加条形图的最佳方法是什么?

> data.frame(CLIENT=c("Mr Fluffy","Peppa Pig","Mr Fluffy","Dr Who"), Freq=c(18414000,9000000,7000000,15000000), DAY=c("2011-11-03","2011-11-03","2011-11-04","2011-11-04"))
     CLIENT     Freq        DAY
1 Mr Fluffy 18414000 2011-11-03
2 Peppa Pig  9000000 2011-11-03
3 Mr Fluffy  7000000 2011-11-04
4    Dr Who 15000000 2011-11-04
>
> # What should I put here?

2 个答案:

答案 0 :(得分:3)

我假设您使用基本图形,因为您提到了barplot。这是一种使用它的方法:

wide <- reshape(dat, idvar="CLIENT", timevar="DAY", direction="wide")
barplot(as.matrix(wide[-1]), beside=FALSE)

或者,使用ggplot2

library("ggplot2")

ggplot(dat, aes(x=DAY, y=Freq)) +
  geom_bar(aes(fill=CLIENT), position="stack")

答案 1 :(得分:1)

尝试ggplot2:

ggplot(df,aes(DAY,fill=CLIENT,weight=Freq))+geom_bar()

无耻地从这里扯下来:

http://had.co.nz/ggplot2/geom_bar.html