-1

我正在尝试根据包含在具有两列的数据框中的数据创建堆积条形图。数据格式示例如下:

Date    Speed  
01/01/2013  56  
01/01/2013  45  
01/01/2013  34  
02/01/2013  23  
02/01/2013  12  
02/01/2013  1  
03/01/2013  48 

对于每一天,我需要计算属于每个类别的条目数(由限制定义,例如 0-40、41-48、49-60、> 60),然后将每天的计数绘制为堆积条形图.

我可以通过分别计算每天的条目数来做到这一点,并将结果放入正确格式的新数据框中,以使用标准堆叠条形图命令进行绘图。但这是一种低效的方法。我无法在搜索中找到更优雅的方法,但我相信一定存在。

我只想使用标准包来执行此操作,因为我无法在可用的系统上安装新包。

4

1 回答 1

1

你可以在这里使用一个基地barplot。这里有一个例子

dd<-read.table(text="Date Speed
01/01/2013 56
01/01/2013 45
01/01/2013 34
02/01/2013 23
02/01/2013 12
02/01/2013 1
03/01/2013 48", header=T)

#make sure it's a date    
speed_date <- as.Date(dd$Date, "%m/%d/%Y")

#cut data into requested bins
speed_cut <- cut(dd$Speed, 
    breaks=c(0,40,48,60,Inf),
    labels=c("0-40", "41-48", "49-60", "> 60")
)

#pick a color for each bin
speed_cols <- heat.colors(nlevels(speed_cut))

barplot(table(speed_cut, speed_date), col=speed_cols)
legend("topright",levels(speed_cut), fill=speed_cols)

这会产生

在此处输入图像描述

您可能希望更改颜色以适合您的口味。

于 2015-01-26T20:11:32.600 回答