我有一个包含两列的dataframe:los
表示特定事件的停留时间,以及daysbetweenevent
。我想创建一个可视化,显示一个单一的线段说明损失和事件之间的交替dayswidth线。我在想los
的厚带和daysbetweenvisits
的薄带。每个片段将占据数字的相对长度-基本上显示了一个时间轴。
例如,段的顺序将是:2-21-24-12-14-52....,每一个los
段是粗的,每一个daysbetweenvisits
是一条线,最好在上面标注数字。
df <- data.frame(los = c(2, 24, 14, 0, 4, 9, 7, 3, 1),
daysbetweenvisits = c(21, 12, 52, 218, 73, 36, 0, 18, 0))
字符串
2条答案
按热度按时间rdlzhqv91#
第一步是将数据转换为正确的格式。为此,您需要计算每个时间段的开始和结束,然后根据它是在“LOS”期间还是在“访问之间”期间对其进行标记。
您可以通过转置数据框并将其连接到单个数字向量来实现此操作。则其累积和将是每个节段结束时的时间点。然后在这个向量的第一个位置加上0,以获得开始时间。您可以将这些放在数据框中,第二列在“LOS”和“BetweenVisits”之间交替:
字符串
因此,现在数据的格式正确,可以进行绘图:
型
我们可以用
ggplot2
来画这个图型
x1c 0d1x的数据
创建于2023-07-27带有reprex v2.0.2
pw136qt22#
下面是基本的R方法:
字符串
我不知道如何解释零值,所以我只是把它们保持为零。