1

第一次在这里发帖,所以请原谅我的任何失礼。

我有一组数据,基本上由 3 个字段组成:

1)Position 2)Start_of_shift(日期时间对象) 3)End_of_Shift(日期时间对象)

从 datetime 对象中,我可以提取日期、星期几和时间。时间表是 24/7,不符合任何标准的 3 班等轮换,它们是相当特定于一个站点的。(我正在使用 lubridate 包)

我想可视化一天中的时间与一周中的一天以显示员工数量,以便我可以看到员工高度集中以及在特定日期和时间我在哪里轻松。

我不确定如何解决这个问题,因为我对 R 比较陌生,而且我发现各种日期时间包和基本实用程序令人困惑并且经常相互冲突。虽然我找到了很多时间序列绘图的示例,但如果您在不同的字段中有开始和结束时间并且想要显示重叠区域,我几乎没有发现如何绘制

我正在考虑使用 ggplot2 和 geom_tile 来绘制这个,更平滑,但想知道是否有任何很好的例子可以做类似的事情,或者是否有人知道我应该如何转换我的数据以最好地实现我的最终目标。我想保持时间连续,但作为最后的手段,如有必要,我会将其离散化为 15 分钟的块,但不知道是否还有其他选择?

有什么想法吗?

4

3 回答 3

3

您可能会考虑使用甘特图gannt.chartplotrix 包中的函数是创建它们的一种选择。

于 2013-10-09T20:03:56.210 回答
3

也许这个timeline包是你需要的。我发现它非常适合计划项目。它在 CRAN 上,但你可以在它的 Github 主页上看到一个简单的例子

于 2013-10-09T20:40:38.703 回答
0

要计算出有多少人在场(或者如果它是未来的事件应该是),您需要将您的人员配置视为一个存量/流动。

第一步是使用melt包中的函数reshape2来获取一列中的所有日期和另一列中的事件(开始/结束)。

由此,您可以创建随时有多少人参加的运行总数。

于 2013-10-13T05:18:45.460 回答