如何绘制具有时间间隔数据集的观察次数

How to plot the number of observations with time intervals dataset

我有包含 ID、开始时间和结束时间的数据。

ID              start_time                end_time 
1          2017-12-29 03:52:06      2017-12-29 04:56:00
2          2017-12-29 04:12:34      2017-12-29 04:44:00
3          2017-12-29 04:24:36      2017-12-29 05:26:00
4          2017-12-29 04:30:00      2017-12-29 06:24:00
5          2017-12-29 04:33:28      2017-12-29 06:00:00
6          2017-12-29 04:52:08      2017-12-29 06:07:00
7          2017-12-29 05:13:48      2017-12-29 06:33:00
8          2017-12-29 05:33:53      2017-12-29 06:39:00
9          2017-12-29 05:40:00      2017-12-29 07:15:00
10         2017-12-29 05:30:40      2017-12-29 07:00:00
11         2017-12-29 06:08:15      2017-12-29 07:31:00
12         2017-12-29 06:12:33      2017-12-29 07:25:00 

如果我绘制这些时间间隔,它看起来如下所示:

library(ggplot2)
ggplot(time_day1) + 
  aes(x = start_time, xend = end_time, y = id, yend=id, colour = id) + 
  geom_segment() + 
  geom_point() + geom_point(aes(x = end_time )) + 
  xlab("Time") + 
  theme_bw()

我想绘制的是具有与时间序列图相同的 x 轴(时间)的一系列观察值 (id)。如果您为此提供适当的方法,我将不胜感激。

我编辑了你的post,使数据和函数中的变量匹配。

要更改 x 轴的外观,您可以使用 scale_x_datetime(date_labels = "%d.%m.%Y")。在这种情况下,列 start_time/first_time 和 end_time/last_time 必须是 class POSIXct.

要了解更多信息,请参阅 R Graph Gallery or the official reference of the tidyverse/ggplot2 软件包。