使用`geom_line()`与X轴为因素(Using `geom_line()` with X a

2019-09-01 19:59发布

假设我有一个数据帧:

hist <- data.frame(date=Sys.Date() + 0:13,
                   counts=1:14)

我想暗算平日的总数,用线连接点。 下面把上的每个值:

hist <- transform(hist, weekday=factor(weekdays(date),
                                       levels=c('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday')))
ggplot(hist, aes(x=weekday, y=counts)) + geom_point(stat='summary', fun.y=sum)

当我尝试将它们与线路连接( geom_line()抱怨只有每个基团具有一个数据观察,因此不能够绘制点之间的线。

我明白这一点 - 它试图绘制每个工作日(因子水平)一行。

我怎样才能得到ggplot只是假装(对于行的目的),该工作日是数字? 也许我必须有另一列day_of_week是0周一,1日,等?

Answer 1:

如果我正确理解该问题,指定group=1并添加stat_summary()层应该做的伎俩:

ggplot(hist, aes(x=weekday, y=counts, group=1)) +
geom_point(stat='summary', fun.y=sum) +
stat_summary(fun.y=sum, geom="line")



文章来源: Using `geom_line()` with X axis being factors
标签: r ggplot2