我有一项任务,我需要使用ggplot2绘制图形。 我有一个评级矢量(其用户的三星S4评级) 我使用这个生成这些数据:
TestRate<- data.frame (rating=sample (x =1:5, size=100, replace=T ), month= sample(x=1:12,size=100,rep=T) )
现在我需要绘制一个图表,其中X轴将是日期(我们的示例数据中的monthes)和5个不同的行,按5个不同的评级(1,2,3,4,5)
分组。每行显示相应月份的评级计数
我怎样才能在ggplot2中绘制这个?
答案 0 :(得分:3)
首先需要计算每对(评级,月份)的元素数量:
library(data.table)
setDT(TestRate)[,count:=.N,by=list(month, rating)]
然后你可以绘制结果:
ggplot(TestRate, aes(month, count, color=as.factor(rating))) + geom_line()
答案 1 :(得分:0)
如果您的data.table
未设置(可以这么说),您可以使用dplyr
(并在您到达时重命名图例)。
df <- TestRate %>% group_by(rating, month) %>% summarise(count = n())
ggplot(df, aes(x=month, y=count, color=as.factor(rating))) + geom_line() + labs(color = "Rating")